PHx-Modifier: outer

von Thomas Jakobi am Montag, 6. April 2009 um 16:12 Uhr. Kommentare (1)

PHx ist eine sehr mächtige Erweiterung für MODx. Mit diesem Plugin lassen sich Platzhalter, Template-Variablen und auch Snippet-Ausgaben mittels einer einfachen Syntax verändern, mit einem Wert vergleichen etc. Eigene PHx-Modifier können sehr einfach in PHP hinzugefügt werden.

So lässt sich mit folgendem Modifier eine Template-Variable in beliebigem Text einbetten, falls sie nicht leer bzw. gesetzt ist.

Voraussetzungen

Folgende Plugins/Snippets müssen installiert und funktionsfähig sein:

PHx

Es wird eine Datei im Verzeichnis assets/plugins/phx/modifiers angelegt und mit folgendem Inhalt bestückt:

outer.phx.php
<?php
 
// description: surround not empty string with text
// usage: [+string:outer=`before|after`+] 
 
$options = explode("|", $options);
$outer = '';
 
if (trim($output) != '') $outer = $options[0].$output.$options[1];
return $outer;
?>

 

Nun lässt sich mit

[+string:outer=`vorher|nachher`+]

die Template Variable string zwischen 'vorher' und 'nachher' einfügen. Da string auch z.B. mit einem Ditto-Aufruf gefüllt werden kann, lässt sich so für Ditto einfach ein outer-Template nachrüsten:

[*phx:input=`[[Ditto? &noResults=` `]]`:outer=`<div class="xyz">|</div>`*]

Viel Erfolg

Bislang habe ich folgende PHx Modifier veröffentlicht:


Speichern auf digg Speichern auf slashdot Speichern auf del.icio.us Speichern auf technorati Speichern auf furl Speichern auf Google Speichern auf Mister Wong
risc
Re: PHx-Modifier: outer
am 23. Mai. 2009, 19:29:04 Uhr
cool, dank dir hab ich jetzt gelernt wie man die PHx-Modifier sinnvoll einsetzten kann. Ich habe das bisher immer mit vielen kleinen Snippets gelöst und hatte immer das Problem, wenn ich eine neue Seite erstellte, dass ich meine ganzen Snippets neu einpflegen musste. Das fällt dann in Zukunft weg ;-)

gruß risc

Kommentar schreiben

  • Benötigte Felder sind mit einem Stern (*) markiert.
  • Es ist nicht möglich im Kommentar URLs und Links zu hinterlassen.