Das WordPress Plugin WP-PostRatings stellt ein Rich Snippet im Microformat für die Sterne Bewertung durch Besucher zur Verfügung. Die Suchmaschinen zeigen die Sterne Bewertung in ihrern Ergebnisse an. Damit soll das Suchergebnis auffallen und hoffentlich öfter aufgerufen werden.
Nicht jeder Besucher Ihrer Website möchte gleich einen Kommentar schreiben. Aber eine Klick-Bewertung ist schnell gemacht und eventuell Ausdruck der Wertschätzung oder halt nicht. Und das ist auch das Gefährliche an dieser Art von Plugin. Neid, Missgunst oder einfach nur schlechte Laune werden auch gewertet und durch die Suchmaschinen angezeigt. Beobachten Sie wie dieses SEO-Feature auf Ihrer Website von den Besuchern benutzt wird.
Was kann das Plugin?
WP-PostRatings kann eine ganze Menge:
- Sie haben die Wahl zwischen 14 Rating Images. Von Herzen, Daumen hoch / runter, Plus und Minus, Sternen usw. Außerdem können Sie einstellen, wieviel Rating Symbole benutzt werden sollen. Google empfiehlt mehr oder weniger einen Range von 5 Symbolen – siehe dazu die Google Developer Guides.
- Der Rating Text für die Images, in meinem Fall Sterne, kann individuell konfiguriert werden.
- Es kann eingestellt werden wer bewerten darf. Gäste, Login User oder beide Gruppen.
- Die Logging Methode kann unter folgenden Möglichkeiten gewählt werden. Cookie, IP-Adresse, Cookie und IP-Adresse und Benutzername. Aus datenschutzrechtlichen Gründen sollten Sie nur die Cookie Variante benutzen und keine IP-Adresse speichern. Die DSGVO ist in dieser Beziehung ab Mai 2018 sehr rigoros. Leider sind dazu weitere Schritte nötig, mehr dazu weiter unten.
*** Update ab Version 1.86 ***
Herr Chan hat sein Plugin an die GDPR bzw. DSGVO angepasst. Die weiteren Schritte sind nicht mehr nötig. Siehe weiter unten.
*** Ende – Update ab Version 1.86 *** - WP-Postratings stellt eine Übersicht der Bewertungen im Dashboard zur Verfügung. Die Sortierung können Sie einstellen. Es gibt zusätzlich eine Filterfunktion um Bewertungen besser eingrenzen zu können. Jede Bewertung erhält eine aufsteigende ID. Anhand dieser ID können Sie die Bewertung löschen.
- Wenn die Sterne auf der Webseite angezeigt werden, wird der Text je nach Mausposition per Ajax geändert. Diese Texte können ebenfalls eingestellt werden. Es gibt Template Variablen wie zum Beispiel
%RATINGS_IMAGES%
und verschiedene, konfigurierbare Rating Templates für die unterschiedlichen Texte. - Unter Dashboard | Design | Widgets wird eine Ratings Widget zur Verfügung gestellt. Das Widget ist konfigurierbar und kann zum Beispiel in der Sidebar angezeigt werden.
- Das Plugin stellt den Shortcode
[ ratings]
zur Verfügung. Den können Sie irgendwo innerhalb Ihres Textes aufrufen. Der Shortcode wird zur Laufzeit durch die Bewertungsanzeige bzw. Bewertungsmöglichkeit ersetzt. - WP Postratings stellt den PHP Funktionsaufruf
the_ratings()
zur Verfügung. Dadurch können Sie die Bewertung vollkommen flexibel in Ihre Webseiten einbauen. Diese Möglichkeit benutze ich auf dieser Website. Die Verwendung erkläre ich weiter unten näher.
Was kann das Plugin nicht?
- Es kann nicht JSON-LD, sondern nur das ältere Format Microdata. Google präferiert JSON-LD für Snippets. Siehe dazu: Structured Data General Guidelines
- Bei dem nachfolgenden Punkt bin ich mir nicht ganz sicher. Wenn Sie andere Erfahrung gemacht haben, bitte ein Kommentar hinterlassen. WP Postratings adressiert standardmäßig das Schema Article – siehe: http://schema.org/Article. Durch eine PHP-Filterfunktion kann ein anderes Default Schema eingestellt werden. Aber halt keine Zwei für unterschiedliche Custom Post Types.
Die Installation
Vollkommen problemlos über das Dashboard möglich.
Einstellungen
Die Einstellungen können über – Dashboard | Ratings – aufgerufen werden. Abweichend von den Standardwerten habe ich folgendes verändert:
- Ratings Image: Geändert auf “stars_crystal”
- Enable Google Rich Snippets: Yes
- Ratings Logging Method:
Logged By Cookieab Vers.1.86 Logged By IP
Die Integration
Wie ich oben schon beschrieben habe, kann die Sterne Bewertung in jeder Webseite durch den Shortcode [ ratings ]
eingefügt werden. Die Leerzeichen nach und vor der eckigen Klammer dürfen Sie nicht eingeben. Wenn ich die Leerzeichen hier weglasse wird die Sterne Bewertung angezeigt. Sehr flexibel, aber nicht das was ich will.
Ich möchte nicht auf jeder Seite den ganzen Block manuell wiederholen. Die Sterne Bewertung soll vor dem Kommentarformular mit einem Text angezeigt werden. Nachdem ich einige andere, kostenlose Rating Plugins getestet habe, habe ich bei WP-PostRatings das Gesuchte gefunden. Alle anderen Plugins können nicht so flexibel eingesetzt werden. Die Möglichkeiten durch den Aufruf der PHP Funktion sind sehr gut.
Den nachfolgenden PHP-Code habe ich in der functions.php meines Child-Themes integriert. Das von mir verwendete Theme-Framework hat diverse gute Eigenschaften, auf die jetzt aber nicht näher eingehe.
<?php
if (!function_exists( 'tekki_rating' ) ) :
/**
* Eine zusaetzliche Funktion in der Anzeige der single.php
* @hooked evolution_do_single()
*/
function tekki_rating() {
?>
<div class="tekki-rating">
<h2>Wie bewerten Sie diesen Beitrag?</h2>
<p>Eine schnelle Klick-Bewertung - möglichst mit 5 Sternen - wäre nett. Ein Kommentar mit Ihren Erfahrungen zu diesem Thema würde mich noch mehr freuen. Beides zusammen ...</p>
<?php the_ratings(); ?>
</div>
<?php
}
add_action( 'evolution_do_comments', 'tekki_rating', 4 );
endif;
Das CSS für den “tekki_rating” Block sieht wie folgt aus:
.tekki-rating {
margin: 70px 0;
}
.tekki-rating .post-ratings img {
height: 1.0em;
margin-top: -4px;
}
Der im Browser angezeigte HTML-Code für die Sterne Bewertung im Microformat sieht folgendermaßen aus:

WP-PostRating erstellt die Snippet Microformat Daten unterhalb der Sterne Bewertung
Standardmäßig benutzt WP-PostRatings das Seiten-Header-Bild im Microformat. Das ist aber nicht das Logo welches ich den Suchmaschinen übergeben möchte. Auch dafür gibt es eine Plugin-Lösung. Den folgenden PHP-Code habe ich in der functions.php zusätzlich eingefügt:
// Rating Logo aktivieren
add_filter( 'wp_postratings_site_logo', 'wp_postratings_site_logo' );
function wp_postratings_site_logo( $url ) {
return 'https://tekki-tipps.de/wp-content/uploads/brain-website-icon-150x150.png';
}
Dadurch sieht der generierte HTML-Code dann so aus:

Jetzt wird im itemprop=”logo” die richtige Logo URL übergeben.
Rechtssicherheit des WordPress Plugin WP-PostRatings
*** Bis Version 1.85 ***
WP-PostRatings speichert beim Rating immer die IP-Adresse und den ermittelten Hostnamen. Die Daten können in den Rating Logs unter – Dashboard | Ratings | Manage Ratings – angeschaut und gelöscht werden. Das Speichern der IP-Adresse wird nicht durch die Option “Ratings Logging Method” = “Logged By Cookie” beeinflusst. Das permanente Speichern von kompletten IP-Adressen ist nicht erlaubt.
*** Ab Version 1.86 ***
Herr Chan hat sein Plugin an die GDPR bzw. DSGVO angepasst. “Logged By Cookie” erzeugt keinen Log-Eintrag mehr. “Logged By IP” hashed IP-Adressen im Log.
*** Ende – Ab Version 1.86 ***
Es kann niemand ohne richterliche Anordnung in Ihr WordPress Backend schauen. Wie Sie persönlich damit umgehen müssen Sie selber wissen. Ich bin kein Anwalt und darf und kann hier keine juristischen Empfehlungen bloggen.
Ich schreibe in meinem Blog auch über die Rechtssicherheit der von mir genutzten WordPress Plugins. Und weise auf, aus meiner Sicht, rechtliche Stolpersteine öffentlich hin. Wenn ich so einen Stolperstein entdecke und beschreibe, wäre es von mir absolut fahrlässig um nicht zu sagen dumm, wenn ich dann nicht auch selber eine Lösung dafür suche und anwende.
Rechtssichere Lösung für WP-PostRatings
*** Bis Version 1.85 ***
Im WordPress Support-Forum für das Plugin habe ich folgende Beiträge gefunden:
- https://wordpress.org/support/topic/remove-ip-and-host-from-ratings/
- https://wordpress.org/support/topic/how-to-remove-ip/
Ich habe den Quellcode der Datei wp-content | plugins | wp-postratings | wp-postratings.php wie im ersten Forum Eintrag beschrieben geändert. Die Zeile 2 in dem unten angezeigten Quellcode ist die jetzt auskommentierte Zeile 578 der wp-postratings.php Datei. In der Zeile 4 der angepasste Quellcode.
// Log Ratings No Matter What
/*$rate_log = $wpdb->query( $wpdb->prepare( "INSERT INTO {$wpdb->ratings} VALUES (%d, %d, %s, %d, %d, %s, %s, %s, %d )", 0, $post_id, $post_title, $ratings_value[$rate-1], current_time('timestamp'), get_ipaddress(), @gethostbyaddr( get_ipaddress() ), $rate_user, $rate_userid ) );*/
$rate_log = $wpdb->query( $wpdb->prepare( "INSERT INTO {$wpdb->ratings} VALUES (%d, %d, %s, %d, %d, %s, %s, %s, %d )", 0, $post_id, $post_title, $ratings_value[$rate-1], current_time('timestamp'), '', '', $rate_user, $rate_userid ) );
Der Nachteil der ganzen Aktion – wenn eine neue Plugin Version zur Verfügung steht, muss ich vor dem Update den Quellcode wieder anpassen. Ein weiterer Nachteil ist, dass keine Rückverfolgung woher negative Bewertungen kommen möglich ist. Datenschutz ist ein zweischneidiges Schwert. Nachfolgend ein Bildschirmfoto des Rating-Browsers ohne IP / Hostname:

In der Spalte IP / Host wird jetzt nichts mehr angezeigt.
Wenn Sie schon Ratings in der Datenbank haben, greift die Quellcodeänderung erst für neue Sterne Bewertungen.
*** Ab Version 1.86 ***
Die o.g. Quellcodeänderung ist nicht mehr nötig, da IP-Adressen jetzt gehashed werden. Dadurch wird die Grundforderung der DSGVO nach Anonymität erfüllt. Habe die “Ratings Option” auf “Logged By IP” umgestellt.
ACHTUNG !
Wenn Sie die “Ratings Option” auf “Logged By Cookie” eingestellt lassen, wird unter “Manage Ratings” kein Log mehr geschrieben. Gezählt wird trotzdem korrekt.
Fazit
Der Autor des kostenlosen WordPress Plugin WP-PostRatings – Lester ‘GaMerZ’ Chan – ist schon eine bemerkenswerte Person. Auf seiner Website https://lesterchan.net stellt er seine kostenlosen WordPress Plugins vor. Nun sind 20,8 Millionen Downloads nicht gleichzusetzen mit aktiven Installation, aber trotzdem bemerkenswert. Vielen Dank Herr Chan.
Die flexiblen Einsatzmöglichkeiten von diesem Plugin finde ich sehr gut. Wenn Sie selber Bedenken haben im Quellcode etwas zu ändern ist dieses Plugin nichts für Sie.

Kontrolle des SEO Fokus-Keyword: Sterne Bewertung
Das Fokus-Keyword dieser Seite ist Sterne Bewertung
, zusammen mit den mehrfach vorhandenen Wörtern wordpress plugin WP-PostRatings
wird daraus folgende SEO-Kontroll-Suche:
In dem Beitrag WordPress Plugin – Yoast SEO beschreibe ich die Kontroll- und Optimierungsmöglichkeiten von dem auch für diesen Beitrag benutzten SEO Plugin. Dieser Beitrag wird vom Yoast Seo Plugin mit Lesbarkeit = “Gut” und SEO = “Gut” bewertet.
Ich würde auch gerne in der wp-content | plugins | wp-postratings | wp-postratings.php den Code anpassen. Wie komme ich dahin um ihn anpassen zu können?
Okay habe es schon selbst gefunden. Muss es jetzt nur noch anpassen können. Super Beitrag übrigens. Kann dem ganzen rund ums Coding zwar nicht komplett folgen, da ich darin noch nicht so fit bin aber insgesamt ein mega Beitrag. Echt top!
Toller Beitrag!
hat auch mit dem anpassen geklappt.
Habe jetzt noch eine Frage: Muss das Plugin(obwohl jetzt ja jetzt keine Daten erfasst werden) auch noch in der Datenschutzerklärung erwähnt werden? Habe es daher noch nicht aktiviert.
Gruss
Danke. Nun ich bin kein Anwalt, aber da keine persönlichen Daten (IP-Adresse) gespeichert werden, habe ich dies auch nicht in meiner Datenschutzerklärung erwähnt.
Hallo Frank,
die coding-Sache habe ich auch nicht so richtig geschnallt, aber ich konnte nach
(wp-post-ratings eigener) Anleitung, den “the_ratings” code in die page.php meines
themes einbauen und habe einfach den “Bitte bewerten…” Text davor, in die php-Datei
geschrieben. Bei mir war dann ‘h3’ die korrekte Schriftgröße.
– Nachdem ich dann google beauftragt hatte, meine Seite (n) nochmals
zu indexieren (über die google search-console), hat es innerhalb von ein paar Tagen
geklappt. Es scheint so, als wenn google die Sterne erst ab 5 Bewertungen anzeigt, aber
da kann ich auch falsch liegen.
Viele Grüße Oliver
Hallo Oliver,
Google zeigt die Anzahl der Sterne auch an wenn zum Beispiel nur 3 Sterne vergeben wurden. Beispiel, mein Beitrag “WordPress Plugin – Disable Emojis – Ladezeit sparen”. Google Kontrollsuche
Gruß Frank