Hyperlink 加入“;nofollow";标记到MediaWiki中的单个链接

Hyperlink 加入“;nofollow";标记到MediaWiki中的单个链接,hyperlink,mediawiki,nofollow,Hyperlink,Mediawiki,Nofollow,我是一个wiki(使用MediaWiki)的管理员,我们的一个赞助商链接要求我们为他们的链接添加rel=“nofollow”属性,因为他们试图遵守新的谷歌政策。不久前,我故意禁用了整个wiki的global rel=“nofollow”,我想保持这种方式,所以我只想更改这一个链接 现在很明显,普通用户不可能在单个链接上禁用rel=“nofollow”属性,因为垃圾邮件发送者会这样做,从而破坏nofollow的功能 但是我想启用rel=“nofollow”属性(我也是管理员)。有没有办法做到这一点

我是一个wiki(使用MediaWiki)的管理员,我们的一个赞助商链接要求我们为他们的链接添加rel=“nofollow”属性,因为他们试图遵守新的谷歌政策。不久前,我故意禁用了整个wiki的global rel=“nofollow”,我想保持这种方式,所以我只想更改这一个链接

现在很明显,普通用户不可能在单个链接上禁用rel=“nofollow”属性,因为垃圾邮件发送者会这样做,从而破坏nofollow的功能

但是我想启用rel=“nofollow”属性(我也是管理员)。有没有办法做到这一点

例如,如果我想删除指向某个域的所有链接的rel=“nofollowDomainExceptions”,我可以修改$wgNoFollowDomainExceptions。我想要的是相反的:向指向特定域的所有链接添加rel=“nofollow”标记

提前谢谢


另外,据我所知,CSS和javascript攻击是不好的,因为这必须是搜索引擎蜘蛛会看到的东西。

没有配置设置可以做到这一点。但是使用
linkermakeexternalink
hook可以很容易地做到这一点。将此添加到您的
LocalSettings.php

function localAddNoFollow( &$url, &$text, &$link, &$attribs ) {
    $bits = wfParseUrl( $url );
    if ( is_array( $bits ) && isset( $bits['host'] ) ) {
        if ( $bits['host'] == 'www.example.com' ) {
            $attribs['rel']='nofollow';
        }
    }
    return true;
}
$wgHooks['LinkerMakeExternalLink'][] = 'localAddNoFollow';