WordPress网站防止内容被采集方法

佚名 2021-3-9 1,807 3/9

网站被别人恶意采集,是一件让站长非常痛心的事,好不容易整出一些原创文章,就被一些大站给采集去了。如果你的文章还没有被百度收录,而这时却被别人采集去了,而对方的站权重较高,马上被百度收录了,这时百度就会认为对方采集的是原创,而你的却成了采集的。这是没办法的事情,百度也是比较喜欢权重高的网站的。今天就为大家分享WordPress网站防止内容被采集方法。

WordPress网站防止内容被采集方法

方法一:禁用网站feed功能

wordpress自带有RSS订阅功能,本来是用来方便用户订阅用的,但这也成为了一些采集站的利用工具,它们利用feedsky等媒介来采集,一些wordpress采集插件就是通过feed来采集的,而且会自动采集,你发布一篇文章,它们可以马上知道并马上采集去,这是非常可恶的一件事。

下面是禁用wordpress的feed功能的代码,放到wordpress主题的functions.php文件中:

//禁用 feed

function disable_our_feeds() {

wp_die( __('Error: No RSS Feed Available, Please visit our homepage.'));

}

add_action('do_feed', 'disable_our_feeds', 1);

add_action('do_feed_rdf', 'disable_our_feeds', 1);

add_action('do_feed_rss', 'disable_our_feeds', 1);

add_action('do_feed_rss2', 'disable_our_feeds', 1);

add_action('do_feed_atom', 'disable_our_feeds', 1);

方法二:禁止复制

还有一些采集不是通过插件,而是人工直接复制,然后粘贴到自己的网站的,对于这部分,我们可以禁用复制来限制,把下面这段代码放到wordpress主题的header.php文件的标签前:

<script>

function stop(){

return false;

}

document.oncontextmenu=stop;

document.ondragstart=stop;

document.onselectstart=stop;

document.onkeydown = function (e) {

var ev = window.event || e;

var code = ev.keyCode || ev.which;

if (code == 116) {

ev.keyCode ? ev.keyCode = 0 : ev.which = 0;

cancelBubble = true;

return false;

}

}

</script>

通过上面的这段代码,你的文章页面就不能右键选择复制了。当然,这种方法也是有局限性的,因为采用的是JS代码,如果对方浏览器禁用了JS,那这个就没效果了。

方法三:内页添加转载请注明

我们还可以给文章内容添加转载注明,让被采集时也采集到原创地址,代码如下:

// 内页添加转载请注明

function tedlfie_copyright($content) {

if( is_single()){

$content.= '<p class="post-copy"><span style="color:#f00;">转载请注明:</span><a href="'.get_permalink().'" rel="external nofollow noopener noreferrer" target="_blank">'.get_the_title().'</a> - <a href="'.get_bloginfo('url').'" rel="external nofollow noopener noreferrer" target="_blank">'.get_bloginfo('name').'</a></p>';

}

return $content;

}

绝对防采集,现在还很难做到,比方说人家用相关的采集软件规则来采集,就没办法防到了。我们也只能做小化地防止被采集。

- THE END -

佚名

7月14日11:50

最后修改:2021年7月14日
0

非特殊说明,本博所有文章均为博主原创。

共有 0 条评论