Eigene Tags erstellen

Speicherort


Um updatesicher zu sein, müssen die eigenen Tags im folgenden Verzeichnis abgelegt werden:

bis 9.0.0:

/webEdition/we/include/we_tags/custom_tags/

ab 9.0.0

/webEdition/custom/tag

Namenskonvention


Die Tag Datei muss wie folgt benannt werden:


bis 8.0.3: we_tag_NameDesTags.inc.php

 

function we_tag_hello($attribs,$content){
if(($foo = attributFehltError($attribs,"name","hello"))){
return $foo;
}
$name = weTag_getAttribute("name",$attribs,"defaultName",we_base_request::STRING);
return "Hallo " . $name;
}


ab 8.0.4: we_tag_NameDesTags.class.php

 

abstract class we_tag_hello extends we_weTag_tag{
public static function tag(array $attribs = [], $content = '', $internal = false){
if(($foo = self::attributeMissing($attribs,"name","hello"))){
return $foo;
}
$name = self::getAttribute("name",$attribs,"defaultName",we_base_request::STRING);
return "Hallo " . $name;
}
//optional kann der Parser gesteuert werden über
/*public static function parse(array $attribs, $content){
return '<?= ' . we_weTag_parser::printTag('a', $attribs, 'MyLink', false, true) . '; ?>';
}*/
}


Normale Tags erben von der Klasse we_weTag_tag, If-Tags von der Klasse we_weTag_ifTag. IfNot-Tags die keine spezielle Implementierung benötigen werden als leer Klassen die von we_weTag_ifNotTag erben implementiert.

ab 8.0.4: we_tag_NameDesTags.class.php

Beispieltag we:ifTrue>

abstract class we_tag_ifTrue extends we_weTag_ifTag{
public static function tag(array $attribs = [], $content = '', $internal = false){
return true;
}
//optional kann der Parser gesteuert werden über
/*public static function parse(array $attribs, $content){
return '';
}*/
}

 

Beispieltag we:ifNotTrue (setzt die Existenz von ifTrue voraus)

abstract class we_tag_ifNotTrue extends we_weTag_ifNotTag{
}

 

powered by webEdition CMS