Page 12 of 12

Re: Code - Fragen

Posted: Thu Jan 12, 2023 6:04 pm
by lck
Thema Pluginaufruf.

Wie sollte/kann/muss ein Pluginaufruf in einer Seite nach neuesten Stand/in neuen Plugins aussehen? Was sind die Präferenzen?
Funktionieren tut ja einiges.

Pluginaufruf ohne Parameter
{{{pluginname();}}}
{{{pluginname()}}}
{{{pluginname}}}

mit Parameter
{{{pluginname('parameter');}}}
{{{pluginname('parameter')}}}
{{{pluginname 'parameter'}}}

Re: Code - Fragen

Posted: Thu Jan 12, 2023 10:14 pm
by cmb
lck wrote:
Thu Jan 12, 2023 6:04 pm
Wie sollte/kann/muss ein Pluginaufruf in einer Seite nach neuesten Stand/in neuen Plugins aussehen? Was sind die Präferenzen?
Funktionieren tut ja einiges.
Ist vor allem Geschmackssache; ich gehe nicht davon aus, dass eine der diversen Möglichkeiten wieder entfernt wird. Und klar, über Geschmack kann man streiten, aber ich kann mir schwerlich vorstellen, dass jemand ein gutes Argument für den Strichpunkt am Ende vorbringen kann; also weglassen.

Ansonsten halte ich es für sinnvoll, den Pluginaufruf auf einer Seite so zu schreiben wie im Template, und dort sind die Klammern eben verpflichtend, auch wenn keine Argumente angegeben werden (aber eben nicht der abschließende Strichpunkt). Also am ehesten (auch wenn ich da nicht unbedingt konsequent bin):

Code: Select all

{{{pluginname()}}}
{{{pluginname('parameter')}}}
Analog im Template:

Code: Select all

<?=pluginname()?>
<?=pluginname('parameter')?>

Re: Code - Fragen

Posted: Fri Jan 13, 2023 10:56 am
by lck
Na das ist doch mal eine Ansage. Danke Christoph!

Man findet da in den Hilfe-Dateien ja so manches, sogar mit doppelten Anführungszeichen in den Klammern (). Aber anscheinend wird das alles toleriert. Bei PHP ist das schon strikter. Da reicht ein kleiner vergessener Punkt oder single quote und schon erhält man eine weiße Seite.

Re: Code - Fragen

Posted: Fri Jan 13, 2023 12:40 pm
by cmb
lck wrote:
Fri Jan 13, 2023 10:56 am
Man findet da in den Hilfe-Dateien ja so manches, sogar mit doppelten Anführungszeichen in den Klammern (). Aber anscheinend wird das alles toleriert. Bei PHP ist das schon strikter. Da reicht ein kleiner vergessener Punkt oder single quote und schon erhält man eine weiße Seite.
Na ja, wir parsen das im Wesentlichen mit einem regulären Ausdruck; PHP ist da eben strikter. Obschon auch der Pluginaufruf nicht gerade beliebig sein kann (da werden Fehler aber nach Möglichkeit abgefangen, so dass es nicht zu einem White-Screen-Of-Death kommt).

Und ob man einfache (&apos;) oder doppelte (&quot;) Anführungszeichen verwendet, ist auch vor allem wieder Geschmackssache. Man muss halt bedenken, dass Zeichenketten in doppelten Anführungszeichen sehr viele Escape-Sequenzen und String-Interpolation unterstützen, und das will man in aller Regel weder in Pluginaufrufen noch in Templates. Bei Zeichenketten in einfachen Anführungszeichen muss man eigentlich nur darauf achten, dass keine einfachen Anführungszeichen in der Zeichenkette enthalten sind.