wordpress站点实现百度主动推送

百度连接提交分为:主动推送、自动推送、手动提交和sitemap提价这几种方式,这几种方式可以一起使用,让搜索引擎可以更好抓取网站。

特别是主动推送,又称为实时推送,主动推送是最快的被百度收录的方式。主动推送提供了四种推送示例:curl、PHP、post、ruby。接下来主要说明curl推送实现百度主动推送(前提是网站服务器已经支持curl):

/**
* WordPress 利用 curl_init 方式发布文章主动推送到百度,加快收录保护原创
*/
if(!function_exists(‘Baidu_Submit’) && function_exists(‘curl_init’)) {
    function Baidu_Submit($post_ID) {
        $WEB_TOKEN=’xxxxxxxxx’;  // 这里换成你的网站的百度主动推送的 token 值
        $WEB_DOMAIN=get_option(‘home’);
        // 已成功推送的文章不再推送
        if(get_post_meta($post_ID,’Baidusubmit’,true) == 1) return;
        $url = get_permalink($post_ID);
        $api = ‘http://data.zz.baidu.com/urls?site=’.$WEB_DOMAIN.’&token=’.$WEB_TOKEN;
        $ch  = curl_init();
        $options =  array(
            CURLOPT_URL => $api,
            CURLOPT_POST => true,
            CURLOPT_RETURNTRANSFER => true,
            CURLOPT_POSTFIELDS => $url,
            CURLOPT_HTTPHEADER => array(‘Content-Type: text/plain’),
        );
        curl_setopt_array($ch, $options);
        $result = json_decode(curl_exec($ch),true);
        // 如果推送成功则在文章新增自定义栏目 Baidusubmit,值为 1
        if (array_key_exists(‘success’,$result)) {
            add_post_meta($post_ID, ‘Baidusubmit’, 1, true);
        }
    }
    add_action(‘publish_post’, ‘Baidu_Submit’, 0);
}

将代码插入到网站主题的function.php中即可。可在百度站长平台查看主动推送效果

共有 0 条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注