Hallo,
ich suche eine Möglichkeit ein Bild auf alle Unterseiten zu vererben.
Ich habe diesen Post gefunden.
Und habe es versucht an meine Bedürfnisse anzupassen. Was heraus kam war das:
<field_bannerimage type="array">
<tx_templavoila type="array">
<title>Imagebanner</title>
<sample_data type="array">
<numIndex index="0"></numIndex>
</sample_data>
<eType>image</eType>
<TypoScript>
10 = IMAGE
#Defaultbild einfügen
10.file = fileadmin/testbild.jpg
10.file.import = uploads/tx_templavoila/
10.file.import.data = levelfield:-3,bannerimage,slide
10.file.import.current = 1
#listNum: welches Bild soll geholt werden, 0 = das erste Bild
10.file.import.listNum = 0
10.file.import.override.field = bannerimage
</TypoScript>
</tx_templavoila>
<TCEforms type="array">
<config type="array">
<type>group</type>
<internal_type>file</internal_type>
<allowed>gif,png,jpg,jpeg</allowed>
<max_size>1000</max_size>
<uploadfolder>uploads/tx_templavoila</uploadfolder>
<show_thumbs>1</show_thumbs>
<size>1</size>
<maxitems>1</maxitems>
<minitems>0</minitems>
</config>
<label>Imagebanner</label>
</TCEforms>
</field_bannerimage>
Was klappt ist das ein Defaultbild eingefügt wird, und die Auswahl eines beliebigen Bildes für eine spezifische Seite. Was noch nicht klappt ist, wenn ich ein spezifisches Bild angebe, dieses auch auf die Unterseite vererbt wird.
Bei dem Beispiel steht irgendwas, das man die ext_localconf.php erweitern muss. Welche ist da gemeint? Die von Templavoila?
dynamite1781 schrieb
Bei dem Beispiel steht irgendwas, das man die ext_localconf.php erweitern muss. Welche ist da gemeint? Die von Templavoila?
Nein, nicht die von Templavoila,
sondern die von der Ext, welche die Tabelle pages erweitert,
also tx_wsteaserimage im genannten Beispiel.
Genauso gut lässt sich der Eintrag in typo3conf/extTables.php machen,
diese muss dann natuerlich in der localconf.php eingebunden werden:
$typo_db_extTableDef_script = 'extTables.php';
Extension-Hinweis: flexform_getfield...
jenses schrieb
Genauso gut lässt sich der Eintrag in typo3conf/extTables.php machen,
diese muss dann natuerlich in der localconf.php eingebunden werden:
$typo_db_extTableDef_script = 'extTables.php';
Hm, ich habe die Zeile genau so eingetragen in extTables.php
$TYPO3_CONF_VARS["FE"]["addRootLineFields"] .= ',bannerimage';
Aber dann kriege ich Fehler. Wobei ich die extTables.php auch included hab.
Wo kann ich denn über dieses Thema nachlesen?
rrudorfer schrieb
Extension-Hinweis: flexform_getfield...
Danke! Ist auch einen Blick wert. Nur finde ich keine Dokumentation über dieses Tool. Hab zwar mal probiert den folgenden Abschnitt ins Template zu includen,
lib.headerwrapid= USER
lib.headerwrapid.userFunc = tx_flexformgetfield_pi1->main
lib.headerwrapid.field = field_bannerimage
lib.headerwrapid.recLevel=4
lib.headerwrapid.defReturn=mainheader
und dann den Typoscript Tag meines DS gelöscht (siehe oben). Aber so richtig klappt es nicht. Es werden nur die Dateinamen agezeigt, und vererbt werden diese aber auch nicht.
Gibt es irgendwo eine Anleitung??
Hi!
Jetzt wo du das schreibst fällt mir auch gerade auf, dass ich bisher immer nur Text oder ganze "Spalten" (also Content Elemente) vererbt habe...
Versuch doch mal das lib.headerwrapid als IMG-Source zu verwenden... Also in etwa so:
lib.headerimage = IMAGE
lib.headerimage.file < lib.headerwrapid
Ungetestet und vermutlich noch nicht richtig, aber als Ansatz durchaus brauchbar... 8-)
Alternativ könntest du ja einen eigenen Bereich für Content-Elemente reservieren, in welchen du dann das entsprechende Bild einfügst (anstatt es als Input-Feld bei den Seiteneigenschaften zu haben). Das ist vielleicht auch für den Redakteur dann einfacher zu handhaben...
Folgendes TS käme direkt ins XML der DS:
10= RECORDS
10.source.postUserFunc = tx_flexformgetfield_pi1->main
10.source.postUserFunc.field = field_bannerimage
10.source.postUserFunc.recLevel = -1
10.source.postUserFunc.defReturn =
10.tables = tt_content
10.wrap = |
Das mit der Vererbung sollte eigentlich so funktionieren... Verwende mal USER_INT... Denn wenn jemand etwas auf Seite 1 ändert (das Bild) wird zwar der Cache der Seite 1 gelöscht, aber nicht von Seite 2, auf welche der Inhalt der Seite 1 ja vererbt wird... Somit müsste man jedes mal den Cache löschen, wenn man was ändert...
Beim defReturn solltest du noch eine Datei-Endung mit angeben, da das ja der Datei-Name ist...
ACHTUNG!!
Das mit der Vererbung funktioniert auch nur, wenn in den Seiteneigenschaften (in der DB) das XML von TemplaVoila nicht leer ist... Das wird befüllt wenn man entweder einen Inhalt auf die Seite einfügt oder die Seiteneigenschaften bearbeitet... Nochmal ACHTUNG!!! Alle Seiten (und Ordner) in der Rootline müssen das haben...
Gib Bescheid wie es dir ergangen ist... 😉
Ciao,
Roman