WordPress更新文章实时推送到百度

最近才发现用php代码生成的sitemap.xml文件百度那里说格式错误

所以就找了一个新的办法来主动提交

根据百度2015年5月的公告,第二种sitemap提交的方式即将终止使用,以后主要以主动推送(实时)为主。
WordPress不用插件如何实现这个功能呢?
请将以下代码加入主题文件中的function.php文件中

function PushBaiDu(){
 global $post_id;
 global $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');

这样就好了

发表评论