给大家推荐几种WordPress提交数据,加快百度收录的方法

39

对于我们做网站的人而言,加快收录,唯一的目的就是为了让给多人的知道我们,百度站长这几年的变化还是挺大的,例如熊掌号,MIP之类的,后来好像都不知道怎么回事就凉了半截。

不管平台怎样变化,有几种好的方式还是挺不错的,今天就把方法送给大家。

给大家推荐几种WordPress提交数据,加快百度收录的方法

1.直接主动推送(实时)

其实对于这个工具还是有段时间的,我记得刚出来的时候就用的这个方法,几年过去了,这个方法好像也一直没有过时。给大家看看代码。 据说这个方法不需要在意官方说的是否存在curl_init() 函数,适合小白,直接放上去就能够实现主动推送的功能。

/**
* WordPress发布文章主动推送到百度,加快收录保护原创【WordPress通用方式】
* 文章地址:http://www.wuzuowei.net/12076.html
*/
if(!function_exists('Baidu_Submit')){
 function Baidu_Submit($post_ID) {
 $WEB_TOKEN = 'xxxxxxxxxxx'; //这里请换成你的网站的百度主动推送的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;
 $request = new WP_Http;
 $result = $request->request( $api , array( 'method' => 'POST', 'body' => $url , 'headers' => 'Content-Type: text/plain') );
 $result = json_decode($result['body'],true);
 //如果推送成功则在文章新增自定义栏目Baidusubmit,值为1
 if (array_key_exists('success',$result)) {
 add_post_meta($post_ID, 'Baidusubmit', 1, true);
 }
 }
 add_action('publish_post', 'Baidu_Submit', 0);
}

上面的这个方法来源于网络,这是最普遍用的一种,方法也最简单,不仅是站长平台,熊掌号(现在叫移动专区)也用的是这个方法,而且代码也没有过时,功能依然正常使用。可以给大家看下效果,不过我的内容不好,一直没收录,跟代码无关。

2.当然,对于直接推送还有第二种方法

<?php 
date_default_timezone_set('Asia/Shanghai');
add_action('publish_post', 'publish_bd_submit', 999);
function publish_bd_submit($post_ID){
    global $post;
    $bd_submit_enabled = true;
    if($bd_submit_enabled){
        $bd_submit_site = "wangbaiyuan.cn";//此处填写你的域名
        $bd_submit_token ="yourtoken";//此处填写你的token
        $api ="http://data.zz.baidu.com/urls?site=".$bd_submit_site."&token=".$bd_submit_token;
        if($post->post_status != "publish"){
            $url = get_permalink($post_ID);
            $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 = curl_exec($ch);
            $result = json_decode($result, true);
                 $time = time();
                $file =  dirname(__FILE__).'/by_baiduSubmit.txt';//生成日志文件,与代码所处文件同目录
                if(date('Y-m-d',filemtime($file)) != date('Y-m-d')){
                    $handle = fopen($file,"w");
                }else{
                    $handle = fopen($file,"a");
                }
        $resultMessage="";
            if($result['message']){
               $resultMessage= date('Y-m-d G:i:s',$time)."\n提交失败:".$result['message'].":\n网址:".$url."\n\n";
            }
            if($result['success']){
$resultMessage= date('Y-m-d G:i:s',$time)."\n提交成功:".":".$url."\n\n";
            }
                fwrite($handle,$resultMessage);
                fclose($handle);
        }
    }
}
?>

这个方法采用的就是官方的curl这种方式,每个人的主题不同,可能会有报错,今天我试了一下,我把上面的代码添加到了functions.php这个文件最后面,由于多加了<?php ?>结果就无法打开了,大家在添加的时候也要注意。

3.平台以及移动专区同时推送

真不知道百度是怎么想的,有个主动推送,还有个天级收录,不知道有什么区别,总之,百度的东西多用用有助于收录还是不错的。

date_default_timezone_set('Asia/Shanghai'); add_action('publish_post', 'publish_bd_submit', 999);
function publish_bd_submit($post_ID){ global $post;
$bd_submit_enabled = true;
if($bd_submit_enabled){
$api ='http://data.zz.baidu.com/urls?appid=1559286202874932&token=ami4Q0OsrEjPWnKw&type=realtime'; if($post->post_status != "publish"){
$url = get_permalink($post_ID);
$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 = curl_exec($ch);
// $result = json_decode($result, true);
$time = time();
$file = dirname(__FILE__).'/by_baiduSubmit.txt';//生成日志文件,与代码所处文件同目录
if(date('Y-m-d',filemtime($file)) != date('Y-m-d')){
$handle = fopen($file,"w");
}else{
$handle = fopen($file,"a");
}
$resultMessage="";
if($result['message']){
$resultMessage= date('Y-m-d G:i:s',$time)."\n提交失败".$result['message'].":\n网址:".$url."\n\n".$result;
}
if($result['success']){
$resultMessage= date('Y-m-d G:i:s',$time)."\n提交成功".":".$url."\n\n";
}
fwrite($handle,$resultMessage);
fclose($handle);
}
}
if($bd_submit_enabled){
$api ='http://data.zz.baidu.com/urls?site=https://www.liuliankang.com&token=RyVub75SqbRkLu0k';
if($post->post_status != "publish"){
$url = get_permalink($post_ID);
$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 = curl_exec($ch);
// $result = json_decode($result, true);
$time = time();
$file = dirname(__FILE__).'/by_baiduSubmit.txt';//生成日志文件,与代码所处文件同目录
if(date('Y-m-d',filemtime($file)) != date('Y-m-d')){
$handle = fopen($file,"w");
}else{
$handle = fopen($file,"a");
}
$resultMessage="";
if($result['message']){
$resultMessage= date('Y-m-d G:i:s',$time)."\n提交失败".$result['message'].":\n网址:".$url."\n\n".$result;
}
if($result['success']){
$resultMessage= date('Y-m-d G:i:s',$time)."\n提交成功".":".$url."\n\n";
}
fwrite($handle,$resultMessage);
fclose($handle);
}
}
}

同样也是放到主题function.php文件里面,注意这个没有 <?php ?> 。

以上就是我给大家提供的方法,代码都放在主题function.php文件内,以上方法任选其一,看大家喜欢哪种,其实功能都差不多。

发表意见

Please enter your comment!
Please enter your name here