WORDPRESS彻底关闭TRACKBACKS

我就爱WORDPRESS

TRACKBACKS是WEB2.0 发展初期的产物,你在自己的博客引用别人的日志,那么在发表完日志之后,对方的博客就会自动在你所引用的日志评论区添加你的引用信息,其他人就可以很清楚看到你的引用,并且方便地点击就可以来看你的文章,所以TRACKBACKS就成为了博客之间一种通讯的机制和协议,可以看到别人是如何看待自己的日志。

WORDPRESS还使用PINGBACKS机制,使用户不必输入TRACKBACKS地址就能实现TRACKBACKS,使用上更加方便。另外TRACKBACKS功能还能让你看到谁链接了你的博客(当然也包括抄袭者)。

但是TRACKBACKS实际用途并没有按照当初设计那样被要用于博客间交流,更多的是被滥用,SPAMER利用只要知道日志的TRACKBACKS地址就可以发送TRACKBACKS这一漏洞,频发TRACKBACKS,并且AKISMET也经常漏掉,如果不慎其烦的话,就可以关闭WORDPRESS的TRACKBACKS。

关闭TRACKBACKS首先需要到WORDPRESS后台,设置->评论设置中,把ALLOW LINK NOTIFICATIONS FROM OTHER BLOGS(PINGBACKS AND TRACKBACKS)(允许接受来自其它BLOG的链接通告(包括引用和通告) )这一项取消。

但是WORDPRESS的每篇日志是否接受TRACKBACKS是单独设置的,所以你如果你需要把以前的日志的TRACKBACKS也关闭,你需要PHPMYADMIN中执行下面这条SQL。

UPDATE `wp_posts` SET ping_status="closed";

如果你的主机没有提供PHPMYADMIN这个MYSQL工具,你可以直接安装一个WP-PHPMYADMIN直接在WORDPRESS后台使用PHPMYADMIN。

也可以在WORDPRESS当前主题的FUNCTIONS.PHP加入下面代码,使得TRACKBACK功能彻底失效。

//彻底关闭 pingback
add_filter('xmlrpc_methods',function($methods){	$methods['pingback.ping'] = '__return_false';	$methods['pingback.extensions.getPingbacks'] = '__return_false';	return $methods;
});
//禁用 pingbacks, enclosures, trackbacks
remove_action( 'do_pings', 'do_all_pings', 10 );
//去掉 _encloseme 和 do_ping 操作。
remove_action( 'publish_post','_publish_post_hook',5 );

以上,你可以试试~

本文由 我就爱WORDPRESS 作者:我就爱WORDPRESS 发表,其版权均为 我就爱WORDPRESS 所有,文章内容系作者个人观点,不代表 我就爱WORDPRESS 对观点赞同或支持。如需转载,请注明文章来源。
4
我就爱WORDPRESS

发表评论