Benutzer-Werkzeuge

Webseiten-Werkzeuge


webedition:developer-information:development-of-custom-we-tags:create-custom-tags

Eigene Tags erstellen

Speicherort

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

/webEdition/we/include/we_tags/custom_tags/

Namenskonvention

Die Tag Datei muss wie folgt benannt werden:

bis 8.0.3: we_tag_NameDesTags.inc.php

Beispieltag we:hello

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

Beispieltag we:hello

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{
}

Weiterführende Informationen

webedition/developer-information/development-of-custom-we-tags/create-custom-tags.txt · Zuletzt geändert: 2018/08/25 02:16 von Marc Krämer

Recent changes RSS feed