Webdesign, WordPress Programmierung, Online und Social Media Marketing - Webworker Blog

WordPress Nofollow ohne Plugin abschalten – Dofollow ab dem 3. Kommentar

Nofollow Links in WordPress ohne Plugin abschalten

Olivers Artikel WordPress Dofollow ohne Plugin hatte mich etwas zum Nachdenken gebracht. Ich bin ja auch eine absolute Plugin Minimalistin und wenn ein Plugin gespart werden kann, dann ist das durchaus schon eine Überlegung wert. Nur mag ich aber ebenfalls auch keine WordPress Core-Änderungen, weswegen für mich die von Oliver vorgestellte Methode, zum Abstellen von Nofollow Links in den WordPress Kommentaren ohne Plugin, nicht in Frage kam.

Auf einigen meiner WordPress Blogs verwende ich das Nofollow Case by Case Plugin. Bis auf die Tatsache, dass es ein Plugin ist, war ich damit ziemlich zufrieden. Über den Sinn oder Unsinn, einzelne Kommentar Links mit nofollow zu versehen, kann man sich ja bekanntlich streiten. Und Olivers Einstellung, entweder ein vollwertiger Link oder gar kein Link, hat auch so einiges für sich.

Also machte ich mich erst einmal auf die Suche, ob es nicht vielleicht eine andere einfache Lösung gibt, um Nofollow im Kommentarbereich ohne Plugin und auch ohne Core-Änderung abzuschalten. Eigentlich müsste das doch auch über die functions.php im Theme hervorragend funktionieren.

Nofollow über die functions.php abschalten

Wieder mal bin ich fündig geworden, das bisherige Nofollow Plugin deaktiviert, folgende 4 Zeilen in die functions.php eingefügt und schon ist Dofollow ohne Plugin realisiert:

function strip_nofollow($ret) {
$ret = str_replace("rel='external nofollow'","rel='external'", $ret);
return $ret;
}
add_filter('get_comment_author_link', 'strip_nofollow');

Wer mich kennt wird vielleicht ahnen, dass mir das dann doch noch ein bisschen zu wenig ist. Denn eigentlich fand ich schon immer die Lösung des einen Nofollow Plugins interessant, welches die ersten x Kommentare eines Kommentators automatisch auf nofollow setzt. Dass dies bei meinem Nofollow Case by Case Plugin nicht möglich ist, hat mich etwas gestört und mir gerade auch hier im Blog schon einiges an manueller „Nofollow Case by Case“ Arbeit aufgehalst.

Linkabstauber kann ich so ganz und gar nicht leiden, wobei auch die Einstellung von Oliver – ein Link oder kein Link – nicht zu verachten ist. Dann muss ich halt noch etwas weniger großzügig werden und einfach mehr Links löschen. Hm… da bleiben aber immer noch diejenigen, die mir im Eifer des Gefechts (schließlich habe ich nicht unendlich viel Zeit für meine Blogs) durch die Lappen gehen.

WordPress Dofollow ab dem 3. Kommentar

All diese Überlegungen schossen mir durch den Kopf, bis ich mich entschied, einfach mal auszuprobieren die DoFollow functions.php Lösung etwas umzuschreiben und erst ab dem 3. Kommentar einen Dofollow Link zu vergeben. Die ersten beiden Links des Kommentator sind Nofollow, ab dem dritten Kommentar erhält er alle Links dofollow. Einen Comment Count eingebaut, Trackbacks und Pingbacks ausgefiltert und so sieht meine functions.php Lösung nun aus:

//Dofollow ab dem 3. Kommentar
function strip_nofollow($ret) {
 global $wpdb, $comment;
 $queryString="SELECT COUNT(*) as comments FROM ".$wpdb->comments." WHERE comment_author_url='".$wpdb->escape($comment->comment_author_url)."'";
 $comments_count = $wpdb->get_var($queryString);
 if ($comment->comment_type == "pingback" || $comment->comment_type == "trackback") {
  $ret = str_replace("rel='external nofollow'","rel='external'", $ret);
  return $ret;
  }
 if ($comments_count >= 3) {
  $ret = str_replace("rel='external nofollow'","rel='external'", $ret);
  return $ret;
  } else {
  return $ret;
  }
}
add_filter('get_comment_author_link', 'strip_nofollow');

Das Ganze hatte ich auf ein paar Blogs zum Test implementiert -> läuft hervorragend.

Der Comment Count könnte bei einer höheren Anzahl von Kommentaren aber einiges an Last fressen, so dass man es erst einmal langsam ausprobieren sollte.

Nofollow abstellen zusammen mit Dofollow Case by Case Plugin nutzen

Für alle, die das /dontfollow aus dem Nofollow Case by Case auch weiterhin nutzen wollen, bzw. Ihre Datenbank diesbezüglich nicht bereinigen wollen, habe ich die Funktion mal kurz erweitert, so dass Links mit dem /dontfollow Zusatz in einen nofollow Link umgewandelt werden:

//Dofollow ab dem 3. Kommentar + manuelles dontfollow
function strip_nofollow($ret) {
 global $wpdb, $comment;
 $queryString="SELECT COUNT(*) as comments FROM ".$wpdb->comments." WHERE comment_author_url='".$wpdb->escape($comment->comment_author_url)."'";
 $comments_count = $wpdb->get_var($queryString);
 if ($comment->comment_type == "pingback" || $comment->comment_type == "trackback") {
  $ret = str_replace("rel='external nofollow'","rel='external'", $ret);
  return $ret;
 }
 $cmntURL = $comment->comment_author_url;
 $dontfollow_link = stristr($cmntURL, 'dontfollow');
 if ($comments_count >= 3 && $dontfollow_link === FALSE) {
  $ret = str_replace("rel='external nofollow'","rel='external'", $ret);
  return $ret;
 } else {
  $ret = str_ireplace("/dontfollow", "/", $ret);
  return $ret;
 } 
}
add_filter('get_comment_author_link', 'strip_nofollow');

Wer die Nofollow Links im WordPress Kommentar Bereich ohne Plugin abschalten möchte, hat nun die Möglichkeit, über diese zwei verschiedenen Funktionen (die ersten beiden) dies beliebig zu gestalten. Auch wer bereits schon das Dofollow Case by Case Plugin im Einsatz hatte, kann die mit diesem Plugin auf nofollow gesetzten Links mit der dritten Möglichkeit weiterhin so belassen, ohne diese Links entsprechend abändern zu müssen.

Lesetipps mit ähnlicher Thematik:
  • Gern verwendete Suchbegriffe:
  • dofollow links kommentare
  • nofollow wordpress
  • plugin dofollow wordpress
  • wordpress do follow setzen
  • wordpress dofollow plugin fingerprint
Blogverzeichnis - Blog Verzeichnis bloggerei.de