Deutscher Support > Generelle Fragen
[gelöst]tmpl_if in tmpl_loop
(1/1)
EikeK:
Hallo, ich arbeite nun seit drei Tagen erstmals überhaupt mit einer Template-Engine und bin daher noch recht unerfahren was eigentlich wirklich möglich ist
Nun hätte ich gleich die erste Frage: undzwar ist es mit vLib möglich, wie in PHP, in einer Schleife eine Bedingung zu stellen, die nur erfüllt wird, sobald ein bestimmter Teil in der Schleife vorkommt?
Ich arbeite zur Zeit an einer recht einfachen Listennavigation, die folgendermaßen aufgebaut ist:
--- Code: ---<ul>
<tmpl_loop name=navi>
<li>
<a href="{tmpl_var name=link}">{tmpl_var name="naviLinkName"}</a>
<ul>
<tmpl_loop name=subNavi>
<li><a href="{tmpl_var name=link}">{tmpl_var name="naviLinkName"}</a></li>
</tmpl_loop>
</ul>
</li>
</tmpl_loop>
</ul>
--- End code ---
Nicht jeder Listenpunkt hat jedoch Unterpunkte, die in dem zweiten Loop angezeigt werden könnten, also wird auch immer ein öffnendes und sofort wieder schließendes <ul> erzeugt sobald keine Informationen vorhanden sind.
Gibt es in vLib eine Möglichkeit dies zu lösen?
[EDIT] Im nachhinein hab ich gesehen, dass ein es mal sehr ähnliches Beispiel auf http://doku.clausvb.de/vlib_beispiele.htm gab unter vLIB: TMPL_IF in einen LOOP unterbringen. Jedoch scheint es die Datei sister_sourcecode.php nicht mehr zu geben.
Es wäre sehr nett, wenn dieses Problem behoben werden könnte.
[LÖSUNG] Die Lösung war einfacher als ich gedacht hatte:) Ich habe einfach in das Array, ein Element hinzugefügt, welches zB den Namen showSubNavi hat und den Wert 0 oder 1 annehmen kann. Je nach dem werden dann halt per <tmpl_if name=naviLinkName> die Untermenüpunkte angezeigt oder nicht. Ein Beispiel wird sehr bald folgen.
mit freundlichen Grüßen
Eike
ClausVB:
--- Quote from: Sm0key on Sun, 04. October 2009 - 19:19:11 ---Jedoch scheint es die Datei sister_sourcecode.php nicht mehr zu geben.
--- End quote ---
Doch tut es:
Adding colors, question by sister_sourcecode
Die Suche in diesem Forum hätte definitiv geholfen ... "sister_sourcecode" hat diese Frage hier im Forum gestellt.
Danke für das Beispiel, ignoriert IMHO jeglichen PHP Coding Standard, aber trotzdem danke.
Ach noch was: Du wirst hier solange keinen Support bekommen, bis du dich an die Regeln hälst. Nicht umsonst steht in der News-Box: "Please register with your real name and do not post any SPAM! Violations: "Hk.", "Getagrip", "therain" and "lolox" => deleted"
Und bei der Anmeldung: "You have to use a part of your REAL NAME (e.g. John Doe = "JohnD" or "john.doe") for registration. You have to use a valid mail adress, which is similar to your account name ("[email protected]"). If you do not follow theses rules your account will be DELETED."
Gruß
Claus
Navigation
[0] Message Index
Go to full version