Eigene Box-Vorlagen
Produktboxen, Karten und Listeneinträge selbst gestalten – HTML mit Platzhaltern wie {{title}} und {{{button}}}, mit Code-Editor, Live-Vorschau, Import und Export. Ohne PHP; Links, Tracking und Pflichtangaben bleiben richtig.
Unter „affilinode“ → „Vorlagen“ legen Administratoren eigene Vorlagen an. Eine Vorlage ist HTML mit Platzhaltern; PHP gibt es darin nicht. Als Startpunkt dienen die eingebaute Produktbox, die Karte, der Listeneintrag oder eine leere Vorlage. Neben dem Editor stehen alle Platzhalter – ein Klick fügt sie an der Schreibmarke ein. Fehler erscheinen mit Zeilennummer, die Vorschau darunter zeigt Beispielprodukte, während du tippst. Gespeichert wird erst mit „Vorlage speichern“.
Vorlage verwenden
[affilinode_product id="123" template="custom:meine-box"]
[affilinode_list id="bestenliste" template="custom:meine-karte"]
- Geht bei affilinode_product, affilinode_products, affilinode_list, affilinode_amazon_list, affilinode_deals und affilinode_context – und in den Blöcken und Elementor-Widgets unter „Layout“ („Eigene Vorlage: …“).
- Die Art der Vorlage bestimmt die Anordnung in Listen: „Karte“ im Raster bzw. Karussell, „Produktbox“ und „Listeneintrag“ untereinander.
- Gibt es die Vorlage nicht oder enthält sie Fehler, erscheint die eingebaute Darstellung; angemeldete Redakteure sehen einen Hinweis.
- Die Mini-Karte an Textlinks hat eine feste Darstellung – sie entsteht im Browser und lässt sich nicht mit einer Vorlage gestalten.
Schreibweise
- {{title}} – ein Wert, automatisch escaped (in href und src als Adresse geprüft).
- {{{button}}} – ein fertiges Teil des Plugins (HTML). Drei Klammern wirken nur bei diesen Teilen; andere Werte bleiben escaped.
- {{#if rating}}…{{else}}…{{/if}} und {{#unless stale}}…{{/unless}} – Bedingungen.
- {{#offers}}…{{/offers}} bzw. {{#each offers}}…{{/each}} – Schleife; darin {{@number}}, {{@first}}, {{@last}}. {{^offers}}…{{/offers}} – nur, wenn die Liste leer ist.
- {{best.price}} – Pfade mit Punkt; {{! Kommentar }} – erscheint nicht in der Ausgabe.
- Platzhalter gehören zwischen Tags oder in Attributwerte mit Anführungszeichen – nicht in on…-Attribute, <script>, <style> oder Kommentare.
Platzhalter
- Produkt: title, brand, badge, badge_type (winner, value oder leer), description, rating (z. B. 4,5), rating_count, image_url, id, marker (Hinweis bei Ersatzprodukten); Listen highlights, pros und cons mit {{text}}.
- Fertige Teile: {{{image}}}, {{{gallery}}}, {{{stars}}}, {{{badge_html}}}, {{{review_badge}}}, {{{highlights_html}}}, {{{proscons_html}}}, {{{description_long}}}, {{{notice}}}, {{{status_html}}}, {{{ebay}}}.
- Preis und bestes Angebot: purchasable, stale, price, old_price, savings, shipping, availability, delivery, shop, condition, price_checked, sales_rank, status, others_count, others_from; als HTML {{{price_html}}}, {{{availability_html}}}, {{{delivery_html}}}, {{{shop_html}}}, {{{ship_line_html}}}, {{{savings_html}}}.
- Links: {{{button}}} und <a class="…" {{{link_attrs}}}>…</a> zum besten Angebot; offers mit shop, price, old_price, savings, shipping, availability, delivery, condition, price_checked, stale, is_best, {{{button}}}, {{{link_attrs}}}, {{{price_html}}}, {{{shop_html}}} und {{{availability_html}}} je Angebot.
- In Listen: in_list, position, rank (nur mit Platzierungen) und note.
- Pflichtangaben: {{{disclaimer}}} (Werbekennzeichnung, Affiliate-Hinweis, Preisstand, Amazon-Hinweis), {{{sources}}} (Quellen der Datenblatt-Werte), ad_label und price_note als Text.
Was das Plugin sicherstellt
- Links zum Shop gibt es nur über {{{button}}} und {{{link_attrs}}} – einen Platzhalter mit der rohen Affiliate-Adresse gibt es nicht. So gelten Tracking-ID, Sub-IDs, eigene Weiterleitungen (/go/…), „In den Amazon-Warenkorb“ und das Klick-Tracking immer.
- Jeder Link einer Vorlage bekommt rel="sponsored nofollow".
- Fehlen {{{disclaimer}}} oder {{{sources}}} in einer Einzelbox, hängt das Plugin sie unten an. In Listen stehen sie wie bisher einmal unter der Liste.
- Die Ausgabe läuft für alle Benutzer durch wp_kses mit einer festen Liste erlaubter Elemente und Attribute: <script>, <style>, <iframe>, style- und on…-Attribute und javascript:-Links fallen weg. Das gilt auch für Administratoren.
- Grenzen: 30 000 Zeichen je Vorlage, 8 Ebenen Verschachtelung, 50 Vorlagen je Website.
Gestalten, AMP, Export
- Ein eigenes CSS-Feld je Vorlage gibt es nicht. Gib deinem HTML Klassen und gestalte sie unter „Design“ → „Customizer“ → „Zusätzliches CSS“ (im Site-Editor unter „Stile“). Beginne die Selektoren mit .acp-tpl--<slug>, dann wirkt es nur in dieser Vorlage. Hatte eine Vorlage bisher CSS, zeigt das Plugin es einmalig zum Kopieren an; ausgegeben wird es nicht mehr.
- Auf AMP-Seiten erscheinen Vorlagen nur, wenn sie kein eigenes <script>, <style>, <img>, keine Formularelemente und keine style- oder on…-Attribute enthalten – sonst die eingebaute Darstellung. Für Bilder {{{image}}} nehmen.
- Vorlagen stehen in der Einstellungsdatei („Einstellungen exportieren und importieren“) und lassen sich unter „Vorlagen“ einzeln oder alle als JSON exportieren und importieren. Vorlagen mit gleichem Slug werden ersetzt.