[Frage] Inhaltselemente von ID Liste anzeigen TYPO3-Version: 10.4.8

  • 3dxO 3dxO
    R2-D2
    0 x
    100 Beiträge
    1 Hilfreiche Beiträge
    22. 10. 2020, 11:21

    Hallo, ich bräuchte mal Hilfe.
    Auf einer Seite möchte ich Einträge von anderen Seiten gesammelt anzeigen. Dazu möchte ich eine Template-Konstante mit einer Liste der Seiten-IDs an folgendes Skript übergeben:
    [code]lib.teaser = COA
    lib.teaser {
    10 = CONTENT
    10 {
    stdWrap.wrap = <div class="header">|</div>
    table = tt_content
    select.orderBy = sorting
    select.pidInList = 6
    select.where = colPos=1
    select.max = 1
    select.begin = 0
    select.languageField = sys_language_uid
    }
    20 = CONTENT
    20 {
    stdWrap.wrap = <div class="text">|</div>
    table = tt_content
    select.orderBy = sorting
    select.pidInList = 6
    select.where = colPos=2
    select.max = 1
    select.begin = 0
    select.languageField = sys_language_uid
    }
    }

    page.50.30 < lib.teaser
    [/code]

    Nun soll die Zahl 6 ersetzt werden durch die IDs in der Liste {$TEASER_ID_LIST}

    In den Konstanten habe ich folgendes definiert:
    TEASER_ID_LIST = 6,7,8

    Wie bekommt man sowas zum laufen?

    Danke,
    Christian


  • 1
  • Julian.Hofmann Julian.Ho...
    Flash Gordon
    0 x
    3116 Beiträge
    137 Hilfreiche Beiträge
    22. 10. 2020, 12:32

    Ähm, pidInList sollte genau das tun: select.pidInList = 6,7

  • 3dxO 3dxO
    R2-D2
    0 x
    100 Beiträge
    1 Hilfreiche Beiträge
    26. 10. 2020, 08:50

    Hallo und danke für die Antwort. Das habe ich ja schon ausprobiert. Aber dann werden jeweils alle Content-Elemente im header bzw. im text Bereich zusammengefasst. Ich möchte das in der Abfolge der TEASEr_ID_LIST jeweils:
    header
    text
    header
    text
    header
    text
    ...

  • Julian.Hofmann Julian.Ho...
    Flash Gordon
    0 x
    3116 Beiträge
    137 Hilfreiche Beiträge
    26. 10. 2020, 14:26

    Darf ich mal vorsichtig fragen, was Du eigentlich baust? Mir erscheint das gerade nicht nur technisch etwas merkwürdig, sondern auch für den einpflegenden Redakteur etwas merkwürdig...

    Jedes Inhaltselement hat 1-2 Headlines in der Datenbankstruktur. Wozu dieser Zusammenbau aus zwei colPos?

  • 3dxO 3dxO
    R2-D2
    0 x
    100 Beiträge
    1 Hilfreiche Beiträge
    27. 10. 2020, 09:41

    Natürlich :) Es geht um eine Startseite auf welcher eine Zusammenfassung verschiedener Teaserelemente angezeigt werden sollen. Diese Teaserelemente sind auf den jeweiligen Seiten untergebracht und bestehen aus einem Introbild welches als HTML-Element angelegt ist, sowie einem TEXT-Element.

    Die Verwendung eines HTML-Elementes für das Introbild ist meinem mangelnden Typo3 Verständnis geschuldet. Typo3 skaliert die Bilder wenn ich die entsprechenden Inhaltselemente wähle und da ich nicht verstehe warum lade ich die Bilder selbst auf den Server und platziere sie direkt mit HTML. Das fällt mir wesentlich einfacher. Es gibt auch keine weiteren Redakteure bei dieser Webseite, so dass ich da kaine Rücksicht drauf nehmen muss. Einen Typo3 Lehrgang bekomme ich leider nicht bezahlt. Aber aus mir unerfindlichen Gründen wird Typo3 gefordert. Ich würde die Webseite eher fest programmieren in HTML, PHP, JavaScript, da ich der Meinung bin Typo3 ist mit Kanonen auf Spatzen zu schießen.

  • Julian.Hofmann Julian.Ho...
    Flash Gordon
    0 x
    3116 Beiträge
    137 Hilfreiche Beiträge
    27. 10. 2020, 20:25

    Ok, dann würde ich eher schauen, dass ich Dich etwas an die Hand nehme und wir einen schönen Lösungsweg für Deine Anforderung finden. Fürchte nämlich, dass Dein Ansatz noch einige Stolpersteine mit sich bringt...

    TYPO3 kann - gerade wenn man es nur nebenbei - schon fies sein und auch für manche Anwendung übertrieben groß sein. Es ist sehr flexibel und kann (fast) alles - daher gibt es aber leider auch viele Schalter/Möglichkeiten/Wege, um ans Ziel zu kommen, und die muss man kennen und/oder die passende Doku finden.
    Nur nicht den Kopf in den Sand stecken - idR wird in der Community gerne geholfen :-)

    "TYPO3 skaliert die Bilder"

    Jain. Für die Elemente "Images" und "Text w/Image" gibt es TypoScript-Konstanten, die maximale Breiten festlegen. Die können heutzutage, wo teil recht große Bilder genutzt werden, einem in die Quere kommen.
    Die Namen und Default-Werte sind:
    [code]styles.content.textmedia.maxW=600
    styles.content.textmedia.maxWInText=300[/code]

    Teaser als eigenes (zusätzliches) Inhaltselement

    eine Idee wäre auch, für die teaser ein eigenes Inhaltselment zu definieren. Mit einem relativ kurzen Fluid-Template könntest Du dann den Teaser gestalten, wie Du willst.
    Eine Anleitung dafür findest Du hier: https://docs.typo3.org/m/typo3/reference-coreapi/master/en-us/ApiOverview/ContentElements/AddingYourOwnContentElements.html Bitte lass Dich nicht vom Umfang abschrecken, denn das meiste könntest Du (erstmal) von textmedia kopieren und v.a. das (Fluid/HTML-)Tempalte anpassen.

  • 3dxO 3dxO
    R2-D2
    0 x
    100 Beiträge
    1 Hilfreiche Beiträge
    28. 10. 2020, 08:35

    Danke dir, auch für den Hinweis mit dem eigenen Inhaltselement (und ja, ich bin tatsächlich erschlagen vom Inhalt der Seite :). Jetzt stellt sich mir allerdings tatsächlich auch die Frage, ob ich überhaupt die richtige Herangehensweise gewählt habe. Der Kunde wünscht quasi "OnePage-Design", allerdings eben doch mit in die Tiefe gehenden Detailseiten.

    Dazu habe ich in Typo3 jeweils für die Hauptkategorien eine leere Seite im Seitenbaum angelegt und darunter Seiten mit einer Spalte für den Kopfbereich (Bild+Text mit parallax-Effekt) und eine Spalte für den Text. Bei Seiten die weitere Details bereitstellen sollen gibt es dann eine weitere untergeordnete Seite.

    Mein TypoSkript-Template erstellt dann also aus den ersten Unterseiten eine OnePage-Darstellung zusammen (falls nicht eigene Inhaltselemente vorhanden sind).

    Dann habe ich eben die Startseite (um die es mir in erster Linie geht) wo anhand einer Template-Konstante die ID's der Seiten angegeben werden von denen die Inhaltselemente in der gleichen Art generiert werden sollten.

    Anbei ein Bild des Seitenbaumes sowie mein TypoScript für die normalen Seiten. Den Rest erledigt Javascript und da funktioniert es soweit. Ich lasse mich allerdings gerne auf bessere Methoden hinweisen.

    Ist es sinnvoll in dieser Richtung weiter zu gehen, oder ist eine andere Einteilung besser?

    Edit: die Anhänge haben nicht funktioniert, darum hier:
    https://webtestserver.de/temp/typo-seitenbaum.jpg
    https://webtestserver.de/temp/default.ts

  • 1