首先,最直接的操作就是,在wordpress主题的functions.php文件中,添加如下代码即可完成对head头部信息中的x-pingback值做了隐藏;
//关闭 pingback
function deel_setup(){
//阻止站内PingBack
if( dopt('d_pingback_b') ){
add_action('pre_ping','deel_noself_ping');
}
}
//WordPress 关闭 XML-RPC 的 pingback 端口
add_filter( 'xmlrpc_methods', 'remove_xmlrpc_pingback_ping' );
function remove_xmlrpc_pingback_ping( $methods ) {
unset( $methods['pingback.ping'] );
return $methods;
}
如果你的WordPress是全新站点,那么就完事了;
但是,如果你是旧站点,网站里已经存在了很多文章的时候,实际上你已经发布的文章的ping_status
早已存入数据库,此时,无论你怎么搞,查看文章的head头信息,x-pingback始终存在;此时你还需要到数据库里进行一下sql执行,命令如下;
UPDATE wp_posts SET ping_status = 'closed' WHERE post_date < '2021-02-02';
以上执行的意思就是 把 2020-02-02 以前的文章的ping_status
值的 open改为closed;
执行完毕以后,清理缓存,再看你文章的head头信息,没错,x-pingback消失了。这个细节问题很容易让人忽略。
最后,WordPress 后台 - 设置 - 讨论 - 允许其他博客发送链接通知(pingback和trackback)到新文章 去掉勾选