[Frage] Inhaltselemente in Abhängigkeit von einer Variable TYPO3-Version: 6.2.7

  • 3dxO 3dxO
    R2-D2
    0 x
    85 Beiträge
    1 Hilfreiche Beiträge
    23. 10. 2015, 09:10

    Hallo,

    wie kann ich CONTENT-Elemente abhängig von einer Variable anzeigen?
    Ich hab folgendes probiert, klappt aber nicht (höchstwahrscheinlich aus gutem Grund ;)

    1. now = TEXT
    2. now {
    3. data = date:U
    4. strftime = %m
    5. }
    6.  
    7. [globalVar = now = 10]
    8. temp.kopfbild.select.pidInList = 65
    9. temp.teaser.select.pidInList = 65
    10. temp.seiteninhalt.select.pidInList = 65
    11. [global]

    Ziel ist es, abhängig vom Monat die Daten aus bestimmten Seiten auszulesen.

    Hoffe sowas geht überhaupt in TS.

    LG,
    3dxO


  • 1
  • maggo maggo
    R2-D2
    0 x
    93 Beiträge
    0 Hilfreiche Beiträge
    23. 10. 2015, 10:25

    Hallo,

    das geht mit userFnc

    [userFunc = check_variable(now)]
    ...
    [end]

    in die localconf.php schreibst du dann deine Funktion:

    function check_variable($now) {
    ... check $ now und gib true zurück, wenn es passt
    }

  • 3dxO 3dxO
    R2-D2
    0 x
    85 Beiträge
    1 Hilfreiche Beiträge
    23. 10. 2015, 11:43

    Hi und danke... allerdings wird die Variable nich korrekt übertragen. ich hab es jetzt direkt mit zahlen probiert.

    Allerdings hatte ich zwischenzeitlich etwas anderes ausprobiert und war schon recht weit:

    1. class typoExtensions {
    2. public $cObj;
    3. public function getElement($content,$conf)
    4. {
    5. $pidList = array(1,54,55,56,57,58,61,63,64,65,67,1);
    6. $pid = $pidList[date('n')-1];
    7.  
    8. $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery(
    9. 'bodytext', // SELECT ...
    10. 'tt_content', // FROM ...
    11. 'pid="'.$pid.'" AND colPos = '.$conf['row'].'', // WHERE...
    12. '', // GROUP BY...
    13. 'sorting', // ORDER BY...
    14. '' // LIMIT ...
    15. );
    16.  
    17. while($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)){
    18. $output = $row['bodytext'];
    19. }
    20. echo htmlentities($output); //zu Testzwecken
    21. return '<div id="'.$conf['divID'].'" class="'.$conf['divCLASS'].'">'.$output.'</div>';
    22. }
    23. }

    einziges und großes Problem hierbei, die Links wurden nicht korrekt erzeugt, da steht immer <link 'id'>. Wie kann man in PHP denn den tt_content so ausgeben wie es von Typo3 gemacht wird?

  • maggo maggo
    R2-D2
    0 x
    93 Beiträge
    0 Hilfreiche Beiträge
    23. 10. 2015, 13:53

    warum so kompliziert? wieso setzt du das ganze nicht als extension um?

    hier findest du eine kleine Anleitung für das Rendern von tt_content in Fluid: [url]http://blog.teamgeist-medien.de/2014/01/extbase-fluid-viewhelper-fuer-tt_content-elemente-mit-namespaces.html[/url]

    Den aktuellen Monat kannst du dann darüber auch einfach abfangen.

  • 1