之前百度官方出了一款wordpress的结构化数据实时推送插件,该款wordpress插件的作用是向百度提交结构化数据的xml,帮助站点保证百度蜘蛛对站点的抓取频率,但是推送页面不保证收录(http://zhanzhang.baidu.com/schema/index),但是百度官方并没有推出Sitemap的实时推送插件,其实Sitemap的实时推送才能最大几率的保证站点的页面被抓取并且被收录,不过大多数站点并没有开通Sitemap权限,以下是引用百度官方对实时推送的介绍:http://zhanzhang.baidu.com/wiki/215

 

好了进入正题,其实小V这次写这篇教程是为一位认识了好几年的基友写的~~他的wordpress站点也百度站长平台的Sitemap权限,但是又不知道如何来操作的实时推送~好了闲话就不多说了~直接上代码:

function PushBaiDu($post_id,$post){
//百度推送接口地址
    $Push = '百度推送接口地址';
    $PushUrl = get_permalink($post_id);
    $PushDate = $post->post_data;
//构造推送xml数据
    $PushXml = '<?xml version="1.0" encoding="UTF-8"?>
    <urlset>
        <url>
            <loc><![CDATA['.$PushUrl.']]></loc>
            <lastmod>'.$PushDate.'</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.9</priority>
        </url>
    </urlset>';
//创建http请求对象
    $wp_http_obj = new WP_Http();
//发送http post请求提交xml数据
    return $wp_http_obj->post($Push, array('body' => $PushXml, 'headers' => array('Content-Type' => 'text/xml')));
}
add_action('publish_post', 'PushBaiDu');

 

将以上代码加入到当前使用的wordpress主题functions.php文件中即可,记得替换$Push变量的值为你们的百度Sitemap实时推送接口调用地址,如果您的站点没有开通则此代码不可用。

Sitemap实时推送接口获取地址:http://zhanzhang.baidu.com/sitemap/pingadd

加上以上代码后发布文章wordpress将会自动推送文章到百度的服务器~本站的博客聚集地实时推送以及评论福利的核心代码都和本教程的代码相似,下面来张维7维3四月份之前的推送列表截图:

wordpress集成百度Sitemap实时推送功能代码

感谢V7V3分享的这段代码,逍遥乐一直就有实时推送权限,但是一直没有用!为了让更多童鞋能够使用,特转载,广而告之!有兴趣的童鞋可以点击下方的链接去V7V3看看!

文章来源:V7V3