it-swarm.com.de

Ein Plugin für rel = "nofollow" in Beiträgen?

Ich möchte alle Links in Posts auf einer meiner Sites erstellen, um mit rel = "nofollow" auf Links in Posts zu sein. Ich konnte bis auf WP-NoExternalLinks kein Plugin finden, das diese Aufgabe erfüllt. Es hat auch nicht funktioniert, es sei denn, ich habe die Option "Dooms Day" verwendet:

Msgstr "Maskiere ALLE Links im Dokument (kann dein Blog verlangsamen und Konflikte mit dem Cache und anderen Plugins verursachen. Bitte benutze es auf eigenes Risiko."

Aber wenn ich es benutze, wird es auch meinen Blogroll-Links nicht folgen (die ich am liebsten am Leben gehalten hätte).

Irgendwelche Vorschläge, was dies verursachen könnte? oder wie man es löst?

Vielen Dank.

1
Tal Galili

sie können einen Filter in Ihrer functions.php hinzufügen

// Nofollow in content
add_filter('the_content', 'my_nofollow');

function my_nofollow($content) {
    //return stripslashes(wp_rel_nofollow($content));

    return preg_replace_callback('/<a[^>]+/', 'my_nofollow_callback', $content);
}

function my_nofollow_callback($matches) {
    $link = $matches[0];
    $site_link = get_bloginfo('url');

    if (strpos($link, 'rel') === false) {
        $link = preg_replace("%(href=\S(?!$site_link))%i", 'rel="nofollow" $1', $link);
    } elseif (preg_match("%href=\S(?!$site_link)%i", $link)) {
        $link = preg_replace('/rel=\S(?!nofollow)\S*/i', 'rel="nofollow"', $link);
    }
    return $link;
}
3
웃mauri

Haben Sie versucht, das Nofollow mit jQuery hinzuzufügen? Ich denke, wenn ich Ihren Beitrag richtig verstehe, möchten Sie NUR die Verfolgung externer Links einstellen, aber die Verfolgung interner Links korrekt?

$(function() {
    $("a[href^=http://]").attr("rel","nofollow");
});
1
Chadster_BAM

Es gibt jetzt das Plugin Rel Nofollow , das das tut, was hier gebraucht wird.

Zitiert seine Beschreibung:

Wenn ein Beitrag gespeichert wird, fügt das Plugin die Attribute rel = "nofollow" hinzu, um Links zu posten. Das Plugin bietet auch ein passendes Kontrollkästchen, um einen Beitrag von der Aktion des Plugins auszuschließen.

0
Ste_95
/**
* add nofollow to links
*/
function add_nofollow_content($content) {
    $content = preg_replace_callback(
        '/<a[^>]*href=["|\']([^"|\']*)["|\'][^>]*>([^<]*)<\/a>/i',
    function($m) {
        if (strpos($m[1], "YOUR_DOMAIN_HERE") === false)
            return '<a href="'.$m[1].'" rel="nofollow" target="_blank">'.$m[2].'</a>';
        else
            return '<a href="'.$m[1].'" target="_blank">'.$m[2].'</a>';
    },
    $content);
    return $content;
}
add_filter('the_content', 'add_nofollow_content');

Diese Funktion verwendet den regulären Ausdruck, um den http und andere Links zu finden und überspringt dann auch das Hinzufügen von Nofollow zu Links, die Ihren Domainnamen enthalten. Weitere Details unter http://digitizor.com/2014/07/05/add-nofollow-external-wordpress/ . Weitere Informationen zum Hinzufügen weiterer Domains finden Sie auf dieser Seite.

0
Deb