Zum Inhalt springen

Nicht verwendet Elemente werden angezeigt

Erstellt am 9. April 2008 · 3 Antworten · letzte Antwort am 15. April 2008

Tags: Frage

daniz78 ·

Hallo zusammen,

ich habe aktuell ein Problem mit den "nicht verwendeten Elementen". In der rechten Spalte möchte ich Inhalte vererben, aber natürlich nur solche die nicht gelöscht wurden.

Meine Konfiguration:

<![CDATA[
  10 = CONTENT
  10 {
    table = tt_content
    slide = -1
    select {
      where = tx_templavoila_ds=8 and deleted=0 and hidden=0
      orderBy = sorting
    }
  }
]]>

Leider werden auch "nicht verwendete Elemente" angezeigt, denn, und das ist das komische, sie werden in der DB nicht als "deleted" markiert.

Ich benutze TYPO3 4.1.2 mit TemplaVoila 1.3.3

Bin für jede Hilfe dankbar!

Gruß, Daniz

cschnell ·

ich habe sowas mit "OldColumnStyle" gemacht, dann funktioniert nämlich folgendes:

lib.blabla{
	table = tt_content
	# select Statement über altes Column Modell, siehe 
	#<oldStyleColumnNumber type="integer">3</oldStyleColumnNumber> in TV XML
	select{
		pidInList = this
		where = colpos=3			
	}
}

Edit: Sie werden übrigens wirklich nicht deleted sondern lediglich dereferenziert.

daniz78 ·

Weißt Du wo die Referenz zu den Elementen gespeichert wird?

Ich hau schonmal rein profilaktisch meinen Schädel gegen die Wand... #angry#

Hier mal meine komplette Konfiguration im Seitentemplate für die rechte Spalte:

<content_right type="array">
	<tx_templavoila type="array">
		<title>rechte Spalte</title>
		<sample_data type="array">
			<numindex index="0"></numindex>
		</sample_data>
		<etype>ce</etype>
		<typoscript>
		<![CDATA[
			10 = CONTENT
			10 {
				table = tt_content
				slide = -1
				select {
					where = tx_templavoila_ds=8 and deleted=0 and hidden=0
					orderBy = sorting
				}
			}

		]]>
		</typoscript>
	</tx_templavoila>
	<tceforms type="array">
		<config type="array">
			<type>group</type>
			<internal_type>db</internal_type>
			<allowed>tt_content</allowed>
			<size>5</size>
			<maxitems>200</maxitems>
			<minitems>0</minitems>
			<multiple>1</multiple>
			<show_thumbs>1</show_thumbs>
		</config>
		<label>rechte Spalte</label>
	</tceforms>
</content_right>

Ich möchte auch nicht alle Inhalte vererben, sondern nur die mit der DS=8

daniz78 ·

Ok,

ich habe jetzt die Antwort gefunden: http://t3n.yeebase.com/magazin/ausgaben/artikel/templavoila-fuer-extension-entwickler/

Unter "Referenzen und Zuordnung über PID" steht:

Anstatt die Information, auf welcher Seite das Element angezeigt werden soll, im Element selbst zu speichern, enthält nun der Datensatz der jeweiligen Seite die IDs der Inhaltselemente, die dort abgelegt wurden.

D.h. in der Tabelle "pages" wird unter "tx_templavoila_flex" in der XML-Strukur gespeichert welche Inhalte angezeigt werden sollen!

Damit wurde sowohl das Feld "pid" in der Tabelle "tt_content" überflüssig, als auch das Feld "deleted". Denn wird ein Element gelöscht, erhält es nicht mehr in "tt_content" den Eintrag "deleted=1" sondern die entsprechende ID wird in "pages" aus der XML-Struktur in der Spalte "tx_templavoila_flex" gelöscht.

Somit können Inhalte wohl nicht mehr ohne weiteres über CONTENT vererbt werden, denn die "nicht verwendeten Elemente" werden damit auch angezeigt.

Jemand eine Idee wie man mit TS-Mitteln das Problem umgehen kann?

Gruß, Daniz