Affiliate-Plugin für WordPress selbst programmieren – mit KI, Google Sheets & JSON

1. Wie Du mit KI Dein eigenes WordPress Plugin für Affiliate-Produkte programmierst

Warum ich mein eigenes Plugin geschrieben habe (und Du das auch kannst)

Kennst Du das? Du willst ein Produkt auf Deiner Seite einbinden – eigentlich eine einfache Aufgabe. Aber dann klickst Du Dich durch zig Einstellungen, öffnest fünf Tabs, wählst aus 20 Vorlagen und fragst Dich irgendwann: Warum ist das so kompliziert?
Genau so ging es mir. Ich nutzte vorher das Affiliate Toolkit – ein mächtiges Plugin, keine Frage. Aber es war zu viel. Zu unübersichtlich. Und vor allem: Zu weit weg von dem, was ich wirklich brauchte.

Ich wollte volle Kontrolle, ein schlankes Design und vor allem: Unabhängigkeit. Kein Plugin-Abo für 100 € im Jahr, keine Limitierungen. Nur ein einfaches System, das tut, was ich brauche: Produktdaten anzeigen – Bild, Titel, Button, fertig.

Also habe ich etwas gemacht, das ich mir früher nie zugetraut hätte: Ich habe mein eigenes Plugin programmiert. Und das Beste? Ich hatte keine Ahnung von PHP, JSON oder WordPress-Hooks – aber ich hatte ChatGPT.

In nur zwei Tagen entstand ein komplettes WordPress Plugin, das meine Produktdaten automatisiert aus einem Google Sheet lädt, als JSON-Datei speichert und per Shortcode flexibel darstellt. Ich nutze es täglich – auf mehreren Seiten. Es spart mir Zeit, Geld und Nerven. Und ich zeige Dir hier Schritt für Schritt, wie Du genau das auch schaffen kannst – egal ob Du Anfänger bist oder einfach keine Lust mehr auf Komplexität hast.

2. Was ist ein Affiliate Plugin – und warum selbst programmieren?

🧩 Was macht ein Affiliate Plugin eigentlich?

Ein Affiliate Plugin erweitert WordPress um die Möglichkeit, Partnerprodukte auf einfache Weise einzubinden. Oft übernimmt es die Kommunikation mit APIs (z. B. von Amazon oder Digistore24), erstellt Produktboxen, verwaltet Klicks und sorgt für hübsche Layouts.
Soweit die Theorie – doch in der Praxis sieht das oft anders aus: Viele Plugins sind überladen, kostenpflichtig, schwer verständlich oder zwingen Dich in starre Design-Vorgaben.

🤔 Warum ich mich gegen fertige Plugins entschieden habe

Ich hatte mit dem Affiliate Toolkit gearbeitet – ein starkes Tool, keine Frage. Aber ich wollte:

  • Ein schlankes Design, das zu meiner Seite passt
  • Eine einfache Produktpflege – ohne 6 Tabs offen zu haben
  • Eine saubere Übersicht, welche Produkte gerade aktiv sind
  • Keinen Schnickschnack, sondern nur Bild, Titel, Beschreibung & Button

Kurz: Ich wollte etwas, das mir die Arbeit vereinfacht, nicht erschwert.

🔧 Mein Lösungsansatz: Selbst bauen mit KI

Statt mich weiter über bestehende Lösungen zu ärgern, habe ich mir gesagt: Dann baue ich’s eben selbst. Und zwar genau so, wie ich es brauche. Das Ergebnis: Ein Plugin, das sich automatisch mit Daten aus einem Google Sheet füttert, eine JSON-Datei in die Mediathek schreibt und diese per Shortcode ausliest.

Heute brauche ich weniger als 30 Sekunden, um ein Produkt einzubinden. Keine Plugin-Abos. Keine Designprobleme. Volle Kontrolle.

Zwei Affiliate-Produktboxen mit Puzzle-Aufbewahrungsordner und Puzzelfolie als Beispiel für Amazon Affiliate-Integration

3. Warum KI? So unterstützt Dich künstliche Intelligenz beim Coden

Wie ich (ohne Ahnung) ein eigenes Plugin geschrieben habe

Ich hatte keinen Plan von PHP. Hooks, Filter, WordPress-Standards? Keine Ahnung.
Aber ich hatte ChatGPT. Und so startete ich mit einer einfachen Frage:

„Wie baue ich ein WordPress Plugin, das JSON-Daten anzeigt?“

Innerhalb von Minuten hatte ich eine Struktur, erste Code-Snippets und – noch wichtiger – ein Verständnis dafür, wie das alles zusammenhängt. Ich musste nichts googeln, keine Tutorials suchen, keine Foren durchforsten. Ich hatte einen Partner an meiner Seite, der jede Frage beantwortete – und mir sogar proaktiv Rückfragen stellte:

„Welche Daten brauchst Du genau? Was soll der Shortcode ausgeben? Soll ich dir den Code kommentieren?“

Das war der Moment, in dem ich wusste: Ich kann das. Und Du kannst das auch.

⚙️ So hat mir KI konkret geholfen

💡Vom Konzept zum Code

Ich habe der KI beschrieben, was ich vorhabe – z. B. „Ein Plugin, das eine JSON-Datei aus dem uploads-Ordner liest und daraus eine Produktbox erzeugt.“
→ Die Antwort: Ein kompletter Code-Vorschlag inkl. Kommentaren und Anpassungsideen.

🔁 Fehler beheben in Sekunden

Fehlermeldung in PHP? Ich habe sie kopiert, eingefügt – und sofort Vorschläge bekommen: Was der Fehler bedeutet, wo er im Code entsteht und wie ich ihn beheben kann.

🎯 Design & Funktion diskutieren

Ich habe Wünsche geäußert: „Ich will nur Bild, Titel, Button – keine Preisbox, kein Ranking.“
→ Die KI lieferte passende CSS-Vorschläge, HTML-Strukturen und sogar Varianten für Raster- oder Tabellenansichten.

🎤 Erfolgsstrategie: So holst Du das Maximum aus der KI raus

💬 Meine erfolgreichsten Prompts:

  • „Welche Infos brauchst Du von mir, um XYZ umzusetzen?“
  • „Was ist noch unklar? Stell mir bitte Rückfragen.“
  • „Mach es so einfach wie möglich, aber mit sauberen WordPress-Standards.“

4. Die Grundstruktur meines Plugins – so funktioniert mein Setup wirklich

🧩 Der erste „echte“ Plugin-Ordner

Ich erinnere mich noch, wie ich meinen ersten Plugin-Ordner im Verzeichnis wp-content/plugins/ erstellt habe. Ich nannte ihn amazon-affiliate-box. Darin: meine Hauptdatei, ein paar Unterordner – und ein fettes Grinsen im Gesicht. Denn plötzlich war ich nicht mehr Nutzer eines Plugins, sondern der Entwickler. Alles begann mit einer einfachen Datei: amazon-affiliate-box.php.

⚙️ So funktioniert mein technischer Workflow im Detail

🧠 Google Sheets als Datenbank

  • Alle Produkte liegen in einem Google Sheet – sauber strukturiert nach:
    • ASIN
    • Titel
    • Beschreibung
    • Kategorie
    • Bild-URL
    • Affiliate-Link
Screenshot eines Google Sheets mit Amazon-ASINs, Titeln, Beschreibungen und Affiliate-Links für ein WordPress Affiliate Plugin

🐍 Amazon API + Python = Daten aktualisieren

  • Ein lokales Python-Skript ruft regelmäßig die Amazon API auf.
  • Es ergänzt automatisch Bild-URLs und Affiliate-Links im Sheet.
  • Anschließend wird ein JSON-Export erzeugt und direkt per SFTP in den /wp-content/uploads/-Ordner auf meiner Seite geladen.

🗂️ Beispieldatei: affiliate-produkte.json

🔄 WordPress Plugin + Shortcode

  • Das Plugin enthält einen Shortcode [amazon_aff_box id=“1″].
  • Es liest die JSON-Datei, findet das Produkt mit der passenden ID oder ASIN und zeigt es als Box an:
    • Bild
    • Titel
    • Beschreibung
    • Button mit Affiliate-Link
Screenshot des WordPress Dateimanagers mit hochgeladener JSON-Datei im Uploads-Ordner

📋 Liste: Meine Plugin-Dateien & ihre Funktion

DateiFunktion
amazon-affiliate-box.phpHauptdatei mit Plugin-Header & Shortcode-Logik
template-aff-row.phpTemplate für Tabellen-Darstellung
klick-tracking.phpOptionales Tracking für Klicks auf Buttons
main.pyPython-Skript: API-Abfrage, JSON-Upload

📥 Download: Mein WordPress Affiliate Plugin

Hier kannst Du die wichtigsten Dateien meines selbst entwickelten Affiliate-Plugins herunterladen:

⚠️ Hinweis: Diese Dateien stelle ich kostenlos zur Verfügung. Nutzung auf eigene Gefahr – ich übernehme keine Haftung für Fehler oder Schäden. Bitte teste das Plugin zuerst in einer lokalen oder Staging-Umgebung.

5. So planst Du Dein Plugin – Funktionen, Ziel und Nutzen

🎯 Warum ich auf alles verzichtet habe, was nicht nötig war

Als ich mein Plugin plante, habe ich mir eine einzige Frage gestellt:

„Was brauche ich wirklich – und was ist nur Ballast?“

Ich wollte keine Vergleiche, keine Buttons in 5 Farben, keine animierten Boxen mit Sternchen. Ich wollte Produkte darstellen – klar, schnell, funktional. Und das für mich, nicht für irgendein Universal-Setup. Diese Klarheit hat den Unterschied gemacht. Es ging nicht darum, alles zu können – sondern nur genau das, was ich wirklich brauche.

🧠 Zielsetzung – worum geht’s eigentlich?

💡 Mein Hauptziel

Ich wollte:

  • keine fremde Datenbank
  • keine komplizierte Bedienoberfläche
  • keine manuelle Pflege von Produktdaten im WP-Admin

Stattdessen:
Datenpflege im Google Sheet, Ausgabe via Shortcode – alles automatisiert & kontrolliert.

🎯 Für wen ist das Plugin gedacht?

Primär für mich selbst – aber die Struktur ist so klar, dass ich es auch auf anderen Seiten nutze. Kein Setup nötig, einfach per JSON + Shortcode. Wenn Du weißt, wie Du eine Tabelle pflegst, kannst Du das Plugin nutzen.

📦 Die absoluten Must-Haves

  • Shortcode mit ID/ASIN → zeigt Produktbox
  • Templates für Einzelbox, Raster und Tabelle
  • Klick-Tracking auf den Button (optional)
  • Bild, Titel, Beschreibung, Button – fertig

✅ Liste: Warum „selber machen“ für mich besser war

PunktFertiges PluginEigenentwicklung
Design-KontrolleEingeschränkt100 %
Aufwand beim Produkt anlegenHochMinimal (via Sheet)
Ladezeit & PerformanceTeilweise schwerfälligSchnell & schlank
Preisca. 100 €/Jahr0 €
Technisches Verständnis nötigTeilweiseNur am Anfang – mit KI machbar

6. So baust Du das Plugin Schritt für Schritt – Code & Praxis

🛠️ Von Null zur funktionierenden Box – in nur zwei Tagen

Ich begann mit einer simplen Idee: „Ich will ein Produkt aus einer JSON-Datei anzeigen.“
Was dann folgte, war ein Dialog mit ChatGPT. Ich erklärte, was ich brauche – die KI fragte zurück: „Wie sieht Deine JSON aus? Was soll genau angezeigt werden?“
Innerhalb weniger Stunden entstand der erste Prototyp. Zwei Tage später lief das Plugin live – komplett funktionsfähig. Ohne Googeln. Ohne StackOverflow. Nur mit KI.

👨‍💻 Der Weg zum eigenen Plugin – so hab ich’s gemacht

🧱 Schritt 1 – Plugin-Grundstruktur via ChatGPT

Frage an die KI:

„Wie sollte ich mein WordPress Plugin strukturieren, wenn ich eine JSON-Datei anzeigen will?“

Antwort:

  • Hauptdatei: amazon-affiliate-box.php
  • Templates: Für verschiedene Ausgabestile
  • Optional: Tracking-Skript
  • JSON-Datei über wp_upload_dir() laden

📂 Tipp: Plugin in /wp-content/plugins/amazon-affiliate-box/ speichern.

🧑‍🍳 Schritt 2 – Die Shortcode-Funktion

Mein Shortcode sieht so aus:

HTML
[amazon_aff_box id="1"]

Die zugehörige PHP-Funktion lädt die JSON-Datei aus dem Uploads-Ordner, sucht die passende ID oder ASIN, und gibt ein HTML-Template zurück.
Je nach Parameter wird eine Einzelbox, ein Raster oder eine Tabelle angezeigt.

🧩 Code: Siehe Datei amazon-affiliate-box.php

🔁 Schritt 3 – JSON-Datei automatisch erzeugen & hochladen

Dafür sorgt mein Python-Skript main.py:

  • Holt sich Produktdaten aus dem Google Sheet
  • Ergänzt über Amazon API die fehlenden Infos (Bild, Preis, Link)
  • Wandelt alles in eine JSON-Datei um
  • Lädt diese via SFTP in /wp-content/uploads/

✅ Der Upload erfolgt automatisch – keine manuelle Dateiübertragung nötig.

Screenshot einer JSON-Datei mit Amazon-ASINs, Titeln, Affiliate-Links und Bild-URLs für ein WordPress Affiliate Plugin
Screenshot mit Shortcode-Beispiel [amazon_aff_row ids="5,6,7,8,9,10"] für die Ausgabe mehrerer Produkte

7. Tracking, Templates & Erweiterungen – so wird Dein Plugin richtig stark

📈 Als ich sah, wie oft wirklich geklickt wird

Ich wollte wissen: Welche Produkte werden überhaupt angeklickt? Also ergänzte ich mein Plugin um ein simples Tracking-Skript. Es zählt, wenn ein Nutzer auf den Button klickt – ganz ohne externe Tools. Das Ergebnis? Ich konnte sofort erkennen, welche Kategorien funktionieren, welche Box-Designs performen – und welche Produkte einfach ignoriert werden. Gamechanger!

🔍 Zusätzliche Funktionen, die echten Mehrwert bringen

🧩 Klick-Tracking selbst integriert

  • Script: klick-tracking.php
  • Funktion: Erfasst Klicks auf Buttons & speichert sie in einer einfachen Log-Datei oder Datenbank-Tabelle
  • Optional: Anzeige von Klickzahlen oder Conversion-Wahrscheinlichkeit direkt neben dem Button

🧠 Vorteil: Keine Abhängigkeit von externen Tracking-Diensten

🧩 Mehrere Templates für flexible Ausgabe

Du kannst in Deinem Plugin verschiedene Ansichten definieren:

  1. Einzelprodukt – als kompakte Box
  2. Produkt-Raster – für Kategorien
  3. Produkt-Tabelle – für Vergleiche

Die Auswahl steuerst Du per Parameter im Shortcode:

HTML
[amazon_aff_row ids="1,2,3"]

🔧 Template-Dateien:

  • template-aff-row.php (Raster)
  • template-aff-box.php (Box)
  • template-aff-table.php (Tabelle)

📋 Erweiterungsmöglichkeiten für Dein Plugin

FunktionBeschreibung
Klick-TrackingMisst, welche Produkte häufig angeklickt werden
Produktgruppen via KategorieDynamische Anzeige nach Themen/Kategorien
Templates für versch. LayoutsGrid, Tabelle, Einzelbox – je nach Seite wählbar
Preishistorie (via Sheet)Optional möglich durch weitere Spalten
Kombi mit Shortlink-Trackingz. B. via Pretty Links, Matomo oder Redirects

8. Fehler vermeiden & Sicherheit erhöhen – wichtige Hinweise aus der Praxis

⚠️ Als plötzlich gar nichts mehr ging

Ich hatte das Plugin fertig, alles lief – bis ich eine neue Produktkategorie im Sheet anlegte. Danach: Leere Seite. Kein Fehler. Nur weiß. Der berüchtigte White Screen of Death. Der Grund? Ein kleiner Syntaxfehler im JSON. Ich hatte ein Komma vergessen. Seitdem weiß ich: Kein Plugin ohne Prüfmechanismen.

🔐 Typische Stolperfallen – und wie Du sie elegant umgehst

🧪 JSON-Validierung ist Pflicht

Vor dem Parsen der Datei unbedingt prüfen:

PHP
$data = json_decode($json, true);
if (json_last_error() !== JSON_ERROR_NONE) {
    return '<p>Fehler beim Einlesen der Produktdaten.</p>';
}

💡 Tipp: Nutze https://jsonlint.com für manuelle Tests während der Entwicklung.

🛡️ Zugriffsschutz für Adminfunktionen

Wenn Du z. B. Tracking- oder Template-Verwaltung ins Backend integrierst:

PHP
if (!current_user_can('manage_options')) {
    return;
}

So stellst Du sicher, dass nur berechtigte Nutzer Zugriff haben.

📂 Pfade und Uploads sicher handhaben

Nutze immer wp_upload_dir() für Pfade – nie hart codierte URLs.
Und prüfe beim Laden der Datei, ob sie überhaupt existiert:

PHP
$upload_dir = wp_upload_dir();
$json_file = $upload_dir['basedir'] . '/affiliate-produkte.json';

if (!file_exists($json_file)) {
    return '<p>Keine Produktdaten gefunden.</p>';
}

📋 Liste: Weitere Sicherheitstipps

RisikoLösung
Direktes Parsen von JSONjson_last_error() nutzen
Nicht-Admins greifen auf Backend zucurrent_user_can() prüfen
HTML-Ausgabe unescapedesc_html() & esc_url() verwenden
PHP-Dateien direkt editierenVorher lokal testen, nie im Live-Editor bearbeiten
Logikfehler im SheetKI kann helfen, Sheet-Logik zu überprüfen

9. Mein persönlicher Workflow: Von der Idee bis zum Live-Gang

✨ „Ich will einfach nur Bild, Titel, Button – mehr nicht!“

Die Idee kam mir, als ich mal wieder ein Produkt in ein fertiges Affiliate Plugin einpflegen wollte. Ich hatte fünf Browser-Tabs offen, musste das Produktbild extra hochladen, Felder ausfüllen, Layout anpassen … und dachte mir: Warum mache ich das nicht einfach selbst?
Ein Google Sheet, ein bisschen Python, ein WordPress Plugin – und los.

🧠 Mein Setup – bewusst einfach gehalten

🔗 Datenhaltung in Google Sheets

Ich wollte kein Datenbankmonster. Also nutze ich einfach ein Sheet mit folgenden Spalten:

  • ASIN
  • Titel
  • Beschreibung
  • Bild-URL
  • Affiliate-Link
  • Kategorie

Einfach, übersichtlich, jederzeit bearbeitbar – sogar mobil.

🐍 Datenpflege & JSON mit Python

Mein Skript erledigt den Rest:

  1. Holt über die Amazon API Bild-URL und Link
  2. Ergänzt die Tabelle automatisch
  3. Exportiert als JSON
  4. Lädt per SFTP direkt nach /uploads auf meiner Website

Datei: main.py

🔧 Das Plugin – minimalistisch, aber wirkungsvoll

  • Shortcode: [aff_box id=“XYZ“]
  • Gibt Produktbox, Raster oder Tabelle aus
  • Templates können erweitert oder gestylt werden
  • Optional: Klick-Tracking inklusive

Ich nutze es aktuell auf mehreren Seiten und pflege dort wöchentlich neue Inhalte ein. Das Einbinden von Produkten dauert jetzt 10 Sekunden. Vorher: 3 Minuten.

⏱️ 💰 Mein Fazit zum Nutzen

KriteriumVorherJetzt
Zeit pro Produktca. 3 Minutenca. 10–30 Sekunden
FlexibilitätEingeschränkt (Plugin-Vorgaben)Vollständig steuerbar
Übersicht über ProdukteKeine100 % über das Sheet
Kostenca. 100 €/Jahr0 € – komplett Eigenbau
LernkurveFrustrierendExtrem motivierend durch KI

10. FAQ – Häufige Fragen zu Deinem KI‑gestützten WordPress Affiliate‑Plugin

1. Wie greife ich mit Python auf Google Sheets zu – besonders mit gspread?

Du kannst die Python-Bibliothek gspread nutzen—eine unkomplizierte Schnittstelle zur Google Sheets API. Damit lässt sich lesen, schreiben und automatisieren.
Dazu benötigst Du einen Service Account, dessen Mailadresse Du mit Lese-/Schreibrechten für Dein Sheet versiehst. Anschließend nutzt Du beispielsweise:

Python
import gspread
gc = gspread.service_account(filename='credentials.json')
sh = gc.open_by_key('DEIN_SHEET_KEY')
worksheet = sh.sheet1
data = worksheet.get_all_records()

2. Wie vermeidest Du API-Limitationen bei häufigem Sheet-Zugriff?

Verwende statt Einzellesezugriffen Batch‑Methoden wie get_all_records() oder batch_get() – so minimierst Du API-Aufrufe und verhinderst Rate‑Limits.

3. Kann man Google Sheets auch ohne Code in WordPress einbinden?

Ja, zum Beispiel mit Plugins wie FlexTable, das Sheets live als responsive Tabellen synchronisiert – inklusive Shortcode-Unterstützung, Sortier- und Suchfunktionen.

4. Wie erstellst Du ein FAQ‑Schema für bessere SEO?

Ein strukturierter FAQ‑Block verbessert die Auffindbarkeit im Netz. Dafür gibt es Plugins wie Ultimate FAQ Accordion, das automatisch FAQPage-Schema erzeugt, suchmaschinenfreundlich darstellen kann und FAQ-Einträge via Shortcode auf der Seite anzeigt.

5. Wie verpasst Du Deinem Workflow mehr Struktur & Automatisierung?

Tools wie n8n ermöglichen einen No‑Code-Transfer Deiner Sheets‑Daten in WordPress indem sie JSON‑Feeds automatisch verarbeiten. Ideal für Workflows ohne eigenes Python-Skript.

6. Wie kannst Du JSON aus Google Sheets weiterverwenden?

Wie schon in unserem Setup: Ein Python‑Skript exportiert das Sheet als JSON, dieser wird in die WordPress-Mediathek hochgeladen und anschließend per Shortcode vom Plugin ausgelesen. Dieses Vorgehen vermeidet Live‑API‑Aufrufe und hält Deine Seite performant und sicher.

11. Fazit: Du brauchst kein Plugin – Du bist das Plugin.

Du hast jetzt gesehen, wie aus einer Idee ein funktionierendes WordPress Plugin wurde – ganz ohne Vorkenntnisse in PHP oder WordPress-Entwicklung. Was es gebraucht hat? Eine klare Vision, ein bisschen Mut – und eine starke KI an der Seite.

Die Kombination aus Google Sheets, Python, JSON und einem schlanken Shortcode macht es möglich, komplexe Affiliate-Prozesse radikal zu vereinfachen. Du hast die volle Kontrolle über Inhalte, Design und Funktion – und das bei maximaler Effizienz.

Aber das Wichtigste: Du hast es selbst gebaut.
Und wenn Du das kannst, dann kannst Du noch viel mehr.

👉 Was hält Dich davon ab, Dein eigenes Plugin zu entwickeln?
Wenn Du Fragen hast, Unterstützung brauchst oder einfach Deine eigene Lösung teilen willst – ich freue mich auf Deinen Kommentar oder Deine Nachricht.

Teile den Beitrag gerne mit anderen Affiliate-Marketern – und zeig ihnen, wie viel Power in einem schlanken Plugin steckt.

Ähnliche Beiträge

Schreibe einen Kommentar

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