TYPO3 Snippet: In Fluid Custom Counter erstellen


Diese kleine Anleitung erklärt, wie man im Fluid (und ein bisschen TYPOSCRIPT) einen eigenen Counter erstellen kann. Dies ist dann Sinnvoll, wenn man mit Conditions arbeitet und den Iterator nicht nutzen kann.

TYPOSCRIPT

lib.calc = TEXT
lib.calc.current = 1
lib.calc.prioriCalc = 1

FLUID / HTML

<f:variable name="myCounter" value="0"/>
<!--Nachdem der Counter erstellt wurde, können wir unsere For Schleife mit z.B. einer Condition durchlaufen lassen-->

<f:for each="{myData.dates}" as="date" iteration="it">
   <!--Wir haben hier ein Beispiel, wir wollen nur aktuelle Datensätze, die neuer als unser aktuelles Datum sind. Dadurch wird der Iterator nutzlos...-->
   <f:if condition="{date.end.timestamp} > {time}">
      <!--Wir zählen hier unseren Iterator hoch, nur wenn wir auch in dem IF sind.-->
      <f:variable name="myCounter">
          <f:cObject typoscriptObjectPath="lib.calc">
             <!--Mit lib.calc holen wir unsere Mathematische Berechnung aus dem Typoscript und können jetzt einfach myCounter +1 rechnen.-->
             {myCounter}+1
          </f:cObject>
       </f:variable>
    <!--Wir wollen nur etwas anzeigen lassen, wenn die Anzahl der Daten unter oder gleich 3 ist.-->
    <f:if condition="{myCounter} <= 3">
       <li>
          <span>{date.start -> f:format.date(format: 'd.m.')} – {date.end -> f:format.date(format: 'd.m.Y')}
          </span>
       </li>
       </f:if>
   </f:if>
</f:for>

Quellennachweise:

Beispiel mit Fluid via StackOverflow


Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.