Ist das obige möglich, d.h. kann man zB im Contentbereich einer Seite ein benutzerdefiniertes Tag einbinden, welches dann extrem einfach ausgedrückt mittels IF-ELSE-Anweisung zwischen der Anzeige von zwei anderen Tags entscheiden kann?
Grüße aus dem sonnigen Nürnberg
LeisureLarry
Benutzung von Tags in benutzerdefinierten Tags?
Re: Benutzung von Tags in benutzerdefinierten Tags?
Müsste via Smarty möglich sein, also ungefähr so
Wenn du noch mehr Verzweigungen benötigst, nimmst du {elseif}.
Code: Select all
{if ...}
{udt-1}
{else}
{udt-2}
{/if}
Re: Benutzung von Tags in benutzerdefinierten Tags?
Das Problem ist, daß der Text (welcher unter anderem das Tag enthält) komplett aus der Datenbank per direktem PHP-Code ausgelesen wird. Kann ich da irgendwie manuell in meinem PHP-Code sagen, daß ich den Variableninhalt parsen bzw. rendern will?
Re: Benutzung von Tags in benutzerdefinierten Tags?
Ähmm, und wo es das Problem - dafür sind udts doch daLeisureLarry wrote: komplett aus der Datenbank per direktem PHP-Code ausgelesen wird.

Entweder ich stehe so kurz vor Ostern (Ende der Fastenzeit) heftig auf dem Schlauch, oder ich hab dich bislang falsch verstanden. Du kannst doch ganz normal in den udtKann ich da irgendwie manuell in meinem PHP-Code sagen,
Code: Select all
echo $variable;
Re: Benutzung von Tags in benutzerdefinierten Tags?
Also, das Problem ist folgendes:
Im Code des ben. Tags steht zB 'print $text;' und '$text = "sdgksfdgf {tag} skfgfkf";'.
In diesem Falle wird das Tag bei mir nicht gerendert, sondern als Text ausgegeben.
Im Code des ben. Tags steht zB 'print $text;' und '$text = "sdgksfdgf {tag} skfgfkf";'.
In diesem Falle wird das Tag bei mir nicht gerendert, sondern als Text ausgegeben.
Re: Benutzung von Tags in benutzerdefinierten Tags?
Hmm, ich glaub, jetzt verstehe ich - mir fielen da drei Möglichkeiten ein:
1. Du deaktivierst im Tag kurz php, also so
2. Das gleiche für die Smarty-Seite, also im Content
Ist aber IMHO ziemlich unelegant und hat einen Nachteil. Da dies im Content steht, kann dir jeder andere Editor drin rumpfuschen.
3. Du verwendest Smarty für die Zuweisung (vor dem benutzerdefinierten Tag)
Im benutzerdefinierten Tag solltest du dann $variable verwenden können.
1. Du deaktivierst im Tag kurz php, also so
Code: Select all
$text = "sdgksfdgf ?>{tag}<?php skfgfkf";
Code: Select all
{php}$text = "sdgksfdgf {/php}
{tag}
{php} skfgfkf";{/php}
3. Du verwendest Smarty für die Zuweisung (vor dem benutzerdefinierten Tag)
Code: Select all
{capture name=variable}
{tag}
{/capture}
Code: Select all
$text = 'sdgksfdgf ' . $variable . ' skfgfkf";
Last edited by cyberman on Fri Apr 06, 2007 4:58 am, edited 1 time in total.