MODX - ustawanie placeholdera w Evo

Jak ustawić placeholder w MODX Evo?

Tworzenie własnego placeholdera w Evo jest bardzo proste. Wystarczy stworzyć snippet do którego przekażemy dwa paremetry - nazwę nowego placeholdera oraz jego wartość.

Snippet

Nazwijmy go "ph" (skrót od placeholder).

<?php
// ph
// Setting custom placeholder. Optionaly with other document TV value.
// Usage example: [ [ ph? &name=`placeholder_name` &value=`My value` ] ]
// Usage example (value from TV):  [ [ ph? &tv=`pagetitle` &id=`26` &name=`placeholder_name` ] ]
// Author: Piotr Matysiak webready.pl

if($tv){
  $output = $modx->getTemplateVarOutput(array("$tv"),$docid="$id",$published=1);
  $output = $output[$tv];
}
else {
  $output = $value;
}

$modx->setPlaceholder($name, $output);
return;
?>

Przykład

[ [ ph? &name=`message` &value=`hello world` ] ]
[ [ ph? &name=`otherPagetitle` &tv=`pagetitle` &id=`26` ] ]

Pierwszy przykład ustawi placeholder "message" o wartości "hello world". Drugi przykład ustawi placeholder "otherPagetitle" o wartości zmiennej "pagetitle" dokumentu o ID 26.

Parametry

  • name - nazwa placeholdera
  • value - wartość placeholdera
  • id - ID dokumentu z pobieraną zmienną (optional)
  • tv - nazwa pobieranej zmiennej dokumentu (optional)