Mit Vorlagen kannst können Sie Produkte beliebig auf Ihrer Webseite darstellen. Sie bieten Ihnen absolute Flexibilität. Sie können die Vorlagen ganz bequem im Backend von WordPress bearbeiten.
Der Aufbau einer Vorlage ist einfach gestaltet, stellen Sie es sich wie die Serienbrieffunktion von Word vor. Sie definieren ein Template und setzen Platzhalter ein. Bei der Ausgabe Ihrer deiner WordPress-Seite wird dieser Platzhalter durch den eigentlichen Wert ersetzt.
Vorlagen können über „affiliate-toolkit“ -> „Vorlagen“ verwaltet werden. Hier können Sie beliebige Vorlagen erstellen und bearbeiten.
Systemvorlagen sind alle Vorlagen welche vom Plugin mitgeliefert werden. Diese Vorlagen können nicht bearbeitet werden aber Sie finden eine Duplizierungsfunktion.
Nachdem Sie die Vorlage dupliziert haben, können Sie diese als benutzerdefinerte Vorlage bearbeiten und verwenden.
Sie finden außerdem für alle Systemvorlagen immer ein Vorschaubild auf der rechten Seite der Übersicht.
Duplizieren Sie die Vorlagen ganz einfach aus den Systemvorlagen heraus.
Wenn Sie eine Vorlage aus dem nichts anlegen möchten, erstellen Sie einfach eine neue Vorlage und nutzen sie die Toolbar über dem Editor. Beachten Sie dabei, das die Vorlage eine Schleife enthalten muss.
Am besten orientieren Sie sich hierfür an einer Systemvorlage.
Diese Vorlage gibt zum Beispiel den Produkttitel aus.
Jeder Vorlagenplatzhalter kann über die Toolbar eingefügt werden. Selbst benutzerdefinerte Felder können so bequem eingefügt werden.
Wir nutzen seit längerem bereits die Template-Engine BladeOne. Es ist eine Bibliothek welche an Laravel angelegt ist. Man kann damit im Grunde auch einfach PHP-Code ausführen aber mit Blade hat man noch einige simple Funktionen speziell für Templates zur Verfügung.
Hier gibt es dazu mehr Informationen:
https://github.com/EFTEC/BladeOne#bladeone-blade-template-engine
Wir übergeben Standardmäßig immer einige PHP-Klassen welche für die Darstellung von Vorlagen genutzt werden können.
$products | Sofern Produkte übergeben wurden, werden diese als Array in dieser Variable gehalten. |
$shops | Sofern Shops übergeben wurden, werden diese als Array ind er Veriable gehalten. |
$formatter | Hierbei handelt es sich um eine Formatter-Klasse mit diversen Funktionen für die Formatierung. |
$shop | Hier wird vom ersten Produkt immer der erste Shop eingefügt. |
$parameters | Diese Klasse enthält alle Parameter aus dem Shortcode und der Seite. |
$translator | DIese Klasse enthalt Funktionen für die Übersetzungen von Produkten. |
Mit diesem Codesnippet kann man eigene Objekte an die Template-Engine mitgeben.
/**
* Fügt eigene Objekte für Bladeabfrage an
*
* @param array $bladedata Das Array welches alle Klassen für die Engine bereit hält.
* @return array Rückgabe des geänderten Arrays
*/
function atkp_modify_bladedata_callback($bladedata) {
$bladedata['eigenes'] = 'hallo';
//Die Variable "$eigenes" ist nun in der BladeEngine verfügbar.
return $bladedata;
}
add_action('atkp_modify_bladedata', 'atkp_modify_bladedata_callback');
Um die Arbeit mit den Templates zu erleichtern, haben wir eine Import- und eine Export-Funktion implementiert. So kannst du bereits erstellte Vorlagen einfach von Installation zu Installation kopieren.
Sie finden die Funktion in affiliate-toolkit, Templates und "Import template":
Danach können Sie die Datei hochladen und die Vorlage importieren.
Beachten Sie, das sie nur ".txt" Dateien hochladen können. ZIP Dateien müssen zuerst entpackt werden.
Vorlagen können ganz einfach in der Übersicht exportiert werden.
Danach beginnt der Download einer .txt Datei.
Sobald man die Vorlagen verstanden hat, kann man relativ schnell eine eigene Vorlage erstellen. Bis dahin muss man sich ein wenig mit dem Tool beschäftigen.
Als erstes sollte man unter affiliate-toolkit -> Anzeigeeinstellungen die Fehleranzeige aktivieren.
Meist werden Variablen genutzt welche (noch) nicht vorhanden sind.
Hier ein Beispiel:
In diesem Beispiel wird $product genutzt bevor $product in der "@foreach" genutzt wird. Hier würde ein Fehler erzeugt werden. Schiebt man die Zeile mit "@foreach" nach oben, wäre der Fehler behoben.