Affiliate-Marketing ist ein valides Geschäftsmodell, aber technisch wird es in WordPress oft schlecht umgesetzt. Aufgeblähte Plugins, fehlende rel-Attribute und langsame Weiterleitungen kosten Rankings und Conversions. Dieser Guide zeigt den Entwickler-Weg: saubere Markup-Regeln, native Redirects, schlankes Tracking und DSGVO-taugliche Offenlegung.
Warum rel="sponsored" Standard für Affiliate-Links ist
Seit 2019 verlangt Google, dass bezahlte und Affiliate-Links das Attribut rel="sponsored" tragen. Früher reichte rel="nofollow". Sei jetzt spezifisch, statt historische Gewohnheiten zu kopieren.
<!-- Schlecht -->
<a href="https://shareasale.com/r?u=123">Jetzt kaufen</a>
<!-- Besser, aber unvollständig -->
<a href="https://shareasale.com/r?u=123" rel="nofollow">Jetzt kaufen</a>
<!-- Standard 2026 -->
<a href="https://shareasale.com/r?u=123" rel="sponsored noopener noreferrer">Jetzt kaufen</a>noopener und noreferrer gehören dazu, sobald der Link in einem neuen Tab öffnet. sponsored schützt vor manuellen Maßnahmen, weil die Beziehung zum Partner klar gekennzeichnet ist. In Gutenberg setzt du das Attribut im Link-Inspector oder per Filter auf the_content, wenn Autoren es vergessen.
| Attribut | Zweck | Wann setzen |
|---|---|---|
sponsored | Kennzeichnet bezahlte / Affiliate-Beziehung | Immer bei Partnerlinks |
nofollow | Historische Variante, signalisiert weniger stark | Optional zusätzlich, nicht allein |
noopener | Verhindert window.opener-Zugriff | Bei target="_blank" |
noreferrer | Kein Referrer an das Ziel | Bei target="_blank" und Privacy-Bedarf |
Ein Audit, den ich auf Magazin-Sites oft laufe: alle externen Links mit Domains der großen Netzwerke (Awin, Amazon, Digistore, Impact) greifen und prüfen, ob sponsored fehlt. Fehlende Tags sind meist Copy-Paste aus alten Beiträgen, nicht Absicht.
Link-Cloaking ohne Plugin-Bloat
Cloaking verwandelt hässliche Netzwerk-URLs (shareasale.com/r?u=123) in kurze Pfade (deineseite.de/go/produkt). Die meisten Teams installieren ThirstyAffiliates oder Pretty Links. Das Problem: Extra-CSS und Extra-JS landen auf jeder Seite, auch wo kein Affiliate-Link steht.
Wenn du Server-Zugriff hast, löse Redirects in Nginx oder Apache. PHP bootet dann gar nicht, und die Antwortzeit bleibt im niedrigen zweistelligen Millisekundenbereich.
Nginx-Beispiel:
location /go/hosting {
return 301 https://beispiel-partner.example/?ref=SITE;
}Apache-Beispiel (.htaccess):
Redirect 301 /go/hosting https://beispiel-partner.example/?ref=SITEWordPress-Weg mit Custom Post Type: Lege einen CPT affiliate_links an. Der Post-Slug ist der Redirect-Key, die Ziel-URL liegt in Post-Meta. Fange die Anfrage bei template_redirect ab.
add_action( 'template_redirect', function () {
if ( ! is_singular( 'affiliate_links' ) ) {
return;
}
$url = get_post_meta( get_the_ID(), 'destination_url', true );
if ( $url ) {
wp_safe_redirect( $url, 301 );
exit;
}
} );wp_safe_redirect statt wp_redirect filtert unsichere Hosts. Für Kampagnen, die A/B-testen, reicht zeitweise ein 302 oder 307. Dokumentiere den Statuscode im CPT-UI, damit niemand dauerhaft mit 302 live geht und Link-Equity verschwendet.
Checkliste für Link-Cloaking
- Kurze Pfade unter
/go/oder/empfehlung/wählen und nie ändern, sobald sie in Newslettern stehen. - Ziel-URL nur über Meta oder Server-Config pflegen, nicht hardcodiert im Theme.
- 404 für tote Keys loggen und monatlich aufräumen.
- Kein globales Cloaking-Plugin aktiv lassen, wenn Nginx den Job schon macht.
Wie Sie Affiliate-Links rechtlich kennzeichnen
Technisch und rechtlich musst du den Hinweis auf die Partnerschaft vor dem ersten Affiliate-Link zeigen. Ein wiederverwendbarer Block oder Shortcode hält die Formulierung zentral.
function affiliate_disclosure_shortcode() {
return '<aside class="disclaimer" role="note">Mit * markierte Links sind Affiliate-Links. Wir erhalten eine Provision, wenn du darüber kaufst, ohne Mehrkosten für dich.</aside>';
}
add_shortcode( 'ad', 'affiliate_disclosure_shortcode' );In Review-Templates den Shortcode automatisch vor dem Inhalt ausgeben, statt ihn Autoren zuzumuten. Für die Datenschutzerklärung: Netzwerkname, Zweck (Provision), und ob Cookies gesetzt werden. Ohne diese Zeilen scheitern Audits bei deutschen Shops und Verlagen regelmäßig.
Tracking der Affiliate-Performance
Klick-Counter-Plugins sind meist überflüssig. Drei Ebenen reichen:
- UTM am Ziel:
utm_source=blog&utm_medium=affiliate&utm_campaign=hosting-review-2026 - Redirect-Logs: Nginx
access_logfür/go/oder ein leichtes PHP-Log vor dem Redirect - Netzwerk-Dashboard: Provision und Conversion kommen vom Partner, nicht von WordPress
add_action( 'template_redirect', function () {
if ( ! is_singular( 'affiliate_links' ) ) {
return;
}
$url = get_post_meta( get_the_ID(), 'destination_url', true );
if ( ! $url ) {
return;
}
error_log( sprintf( 'affiliate_click slug=%s ip=%s', get_post_field( 'post_name' ), $_SERVER['REMOTE_ADDR'] ?? '-' ) );
wp_safe_redirect( $url, 301 );
exit;
}, 9 );Schreibe Logs außerhalb des Web-Roots und rotate sie. IP-Adressen nur speichern, wenn die Rechtsgrundlage und die Löschfrist klar sind. Für reine Aggregatzahlen reicht oft der Pfad plus Timestamp.
| Methode | Was du siehst | Overhead |
|---|---|---|
| UTM in Analytics | Sessions und Landings vom Blog | Kein WordPress-Asset |
Server-Log /go/ | Rohe Klickzahlen | Minimal |
| Netzwerk-UI | Sales und Provision | Kein eigenes Plugin |
| Cloaking-Plugin-Stats | Klicks im WP-Admin | CSS/JS siteweit |
Geschwindigkeit auf Affiliate-Seiten
Review-Artikel scheitern oft an Drittanbieter-Widgets, Preis-Tabellen von CDNs und eingebetteten Produktkarten. Lade Partner-Skripte nur auf Templates, die sie brauchen.
add_action( 'wp_enqueue_scripts', function () {
if ( ! is_singular( 'post' ) || ! has_shortcode( get_post()->post_content, 'affiliate_box' ) ) {
return;
}
wp_enqueue_script( 'affiliate-box', get_stylesheet_directory_uri() . '/js/affiliate-box.js', array(), '1.0.0', true );
} );Zusätzlich: dns-prefetch oder preconnect nur für die zwei bis drei Domains, die wirklich vorkommen. Produktbilder lokal hosten oder über dein eigenes CDN, statt jedes Mal das Netzwerk-CDN anzurufen. Core Web Vitals leiden sonst genau auf den Seiten, die Geld verdienen sollen.
DSGVO und Cookie-Consent
Affiliate-Tracking ist Marketing. Ohne Einwilligung kein Netzwerk-Pixel und kein Fingerprinting-Skript. Baue den Consent-Hook so, dass dein Tag-Manager oder das Custom-Skript erst nach consent=granted startet. Der Redirect selbst (reiner HTTP-301 ohne Cookie) ist meist unkritischer als ein eingebettetes Tracking-Pixel, aber die Datenschutzerklärung muss beides erklären.
Pragmatischer Ablauf auf deutschen Magazin-Sites:
- Consent-Banner speichert Kategorie
marketing. - Erst dann lädt das Affiliate-Netzwerk-Skript.
- Cloaking-Redirects bleiben serverseitig und setzen keine First-Party-Tracking-Cookies ohne Opt-in.
Häufige Fehler beim Affiliate-SEO
- Nur
nofollow: Google erwartetsponsoredfür bezahlte Beziehungen. - 302 für Dauerlinks: Linkkraft und Bookmark-Stabilität leiden.
- Cloaking-Plugin siteweit: Assets auf Kontakt- und Impressum-Seiten.
- Gleicher Ankertext überall: “Hier kaufen” zwanzigmal signalisiert Spam.
- Tote
/go/-Pfade: Newsletter und alte Posts landen auf 404. - Tracking vor Consent: Abmahnrisiko und kaputte Consent-Mode-Setups.
Welche Checkliste vor dem Affiliate-Launch hilft
- Stichprobe von zehn Review-URLs: jedes Affiliate-
aträgtsponsored. /go/-Map exportieren und mit dem CMS abgleichen.- Disclosure-Block steht oberhalb des ersten Partnerlinks.
- Kein Cloaking-Plugin aktiv, wenn Server-Redirects existieren.
- Partner-Skripte nur auf Templates mit Shortcode oder Block.
- Datenschutzerklärung nennt Netzwerke und Opt-in.
- Ein Testklick erscheint in Analytics (UTM) und im Server-Log.
Was Sie zum technischen Affiliate-SEO merken sollten
- Tagging: Immer
rel="sponsored"plus sichere Blank-Attribute. - Performance: Redirects auf Server- oder CPT-Ebene, keine schweren Cloaking-Plugins.
- Messung: UTM, Logs und Netzwerk-Dashboard statt Counter-Bloat.
- Konformität: Disclosure vor dem Link, Consent vor dem Pixel.
Server-Redirects und ein leichter CPT bringen einem Affiliate-Setup mehr als jedes weitere Plugin. Wenn der Stack bereits zu schwer geworden ist, entlasten wir ihn in der technischen WordPress-Arbeit. Für ein konkretes Audit oder die Migration von Pretty Links auf native Redirects schreib uns über das Kontaktformular.







