Template – Beschreibungen per Plugin erweitern

Ein meinem ersten Beitrag zum Thema hatte ich ja bereits die verbesserte Bezeichnung der System-Template’s angesprochen und nun möchte ich euch noch kurz zeigen, wie man die Beschreibungen per Plugin erweitert.

Für unser Beispiel nehmen wir an, dass Ihr für euer Theme eine Datei mit der Bezeichnung „MeineSeite.tpl" erstellt habt und hierfür möchten nun eine Alternativbezeichnung erstellen.

Zunächst brauchen wir dazu natürlich eine spezielle Plugin-Datei,  diese nennen wir z.B. MyDescriptions.php und speichern Sie anschließend im Ordner /plugins.

Der Kopf unserer Plugin-Datei sollte dann wie folgt aussehen:

/**
 * Plugin Name: MyDescriptions
 * Plugin URL: http://www.mountaingrafix.eu
 * Description: Dieses Plugin erweitert die Template - Beschreibungen
 * Author: MountainGrafix
 * Version: 1.0
 */

Anschließend folgt diese Funktion:

function AddDescription($Descriptions) {
	
	$NewDescriptions = array(
		'MeineSeite.tpl' => 'Meine eigene Seite'
	);
	
	return array_merge($Descriptions, $NewDescriptions);
}

Was macht diese Funktion nun?

Zunächst wird das Array $Descriptions mit allen momentan verfügbaren Beschreibungen an die Funktion übergeben. Hier braucht Ihr euch aber keine Gedanken machen, denn dieses geschieht durch die PluginAPI vollkommen automatisch.

Als nächstes erstellen wir ein neues Array $NewDescriptions mit den Bezeichnungen, die wir per Plugin in das System einfügen möchten. Hier müsst Ihr aber zwingend darauf achten, als jeweiligen Array-Key die orginale Template – Bezeichnung, in unserem Fall MeineSeite.tpl, zu benutzen.

In Zeile 7 kombinieren wir dann sowohl das alte, als auch das neue Array und geben die so entstandenen Werte an die PluginAPI zurück. Hier werden die Daten dann weiterverarbeitet und stehen sofort an den entsprechenden Stellen im Script zur Verfügung.

Damit die PluginAPI jedoch auch weiß, wo die entsprechenden Daten benötigt werden, müssen wir ihr natürlich noch den entsprechenden Hook mitteilen und dieses geschieht mittels:

AddFilter('FileDescriptions', 'AddDescription');

Das vollständige Plugin sieht also am Ende so aus:

 'Meine eigene Seite'
	);
	
	return array_merge($Descriptions, $NewDescriptions);
}

AddFilter('FileDescriptions', 'AddDescription');
?>

Ich hoffe, dass ich euch mit Hilfe dieses Tutorial’s etwas mehr über die PluginAPI und die entsprechenden Möglichkeiten erzählen konnte und wenn Interesse besteht, dann schreibe ich gern noch weitere Info’s zu den einzelnen Themengebieten.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.