Oft macht es Sinn, auf verschiedenen Seiten die gleichen Inhalte anzubieten, z.B. Teaser oder Werbebanner im Randbereich einer mehrspaltigen Webseite. Dabei sollte man natürlich nicht auf jeder Seite die gleichen Inhalte einpflegen, sondern die Inhalte vererben: Wenn die Inhaltsspalte der aktuellen Seite keinen Inhalt hat, wird der Inhalt von den Eltern-Seiten genommen. Die Vererbung funktioniert rekursiv, d.h. wenn auch die übergeordnete Seite keinen Inhalt hat, wird bei deren Eltern-Seite nachgeschaut usw.
Hierfür kann man das sogenannte „Content Sliding“ einsetzen. Dieses gibt es seit TYPO3 Version 4. Mehr dazu in der TYPO3 Doku.
temp.myBorderCol < styles.content.getBorder temp.myBorderCol.slide = -1 |
Mit dem „Content Sliding“ ist es auch möglich, die Elemente von den Eltern-Seiten zu sammeln und alle auszugeben. D.h. je tiefer man navigiert, umso mehr Elemente werden angezeigt. Dies funktioniert mit „styles.content.getBorder.slide.collect“.
Super Beitrag! Content Sliding war mich bis jetzt unbekannt und hat mich gerade echt gerettet :)
Danke für den Beitrag.
temp.myBorderCol.slide = -1 funktioniert bei mir. Allerdings werden die Inhalte auf den Unterseiten immer in der default-Sprache angezeigt. Nur auf der Seite, auf der die Inhalte direkt sind, wird die korrekte Sprache angezeigt.
Überall, wo die Inhalte ererbt wurden, sieht man sie in default-Sprache. Irgendwelche Ideen, warum das sein könnte?
Danke,
Peter
Hallo Peter,
dieses Verhalten hatte ich noch nicht. Wenn die Sprachen sonst richtig konfiguriert sind, sollte auch die Vererbung funktionieren. Wenn du TYPO3 Version 6 einsetzt, würde ich sagen, das ist ein Bug, denn diese Version scheint mir noch etwas unausgereift. In der Vergangenheit scheint es Bugs mit dem Feld „media“ bei der Vererbung gegeben zu haben, aber du möchtest ja normale Inhalte vererben.
Ich fürchte, ich kann dir nicht helfen.