15621857753

PhpcmsV9如何自动推送URL到百度站长平台

来源:齐鲁CMS 栏目:PHPCMS 阅读: 日期:2020-11-19

为了便于百度蜘蛛更快的收录文章,不少站长发布文章都会主动提交给百度,这样其实很简单的,如果网站能够发文章就自动推送给百度是不是很简单呢,下面就来说说PhpcmsV9如何自动推送URL到百度站长平台。

为了便于百度蜘蛛更快的收录文章,不少站长发布文章都会主动提交给百度,这样其实很简单的,如果网站能够发文章就自动推送给百度是不是很简单呢,下面就来说说PhpcmsV9如何自动推送URL到百度站长平台。

Phpcms v9 自动推送URL到百不是新技术,只是根据百度站长平台API提交开发的一种提交方法。

具体整理方法如下:

1、在 Phpcms 的函数目录 libs/functions/ 下的拓展函数文件 extention.func.php 文件中添加自定义百度推送函数:

/**
 * baidu推送 @qilucms.com
 * @return result
 */
function push_baidu($bdurls){
    $api = 'http://data.zz.baidu.com/urls?site=https://www.qilucms.com&token=XXXXXXXXXXXX';
    $ch = curl_init();
    $options = array(
        CURLOPT_URL => $api,
        CURLOPT_POST => true,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_POSTFIELDS => implode("\n", $bdurls),
        CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),
    );
    curl_setopt_array($ch, $options);
    $result = curl_exec($ch);
    $result = json_decode($result, 1);
    return $result;
}

注:其中的http://data.zz.baidu.com/urls?site=https://www.qilucms.com&token=XXXXXXXXXXXX注意修改成自己的。具体接口url见百度站长平台API提交上找到。

2、在编辑发布提交函数中调用该方法、做到实时推送:

修改 phpcms/model/content_model.class.php 文件第224行左右的:

//生成静态
if(!$isimport && $data['status']==99) {
    //在添加和修改内容处定义了 INDEX_HTML
    if(defined('INDEX_HTML')) $html->index();
    if(defined('RELATION_HTML')) $html->create_relation_html($catid);
}

在这段中间增加几行百度推送函数,修改下图所示的样子:

phpcms,phpcms自动推送到百度站长平台

//生成静态
if(!$isimport && $data['status']==99) {
    //百度推送
    $bdurls[] = 'http://'.SITE_URL.$urls[1];
    $push_result = push_baidu($bdurls);
    $msg = '';
    if ($push_result['success'] < 1) { $msg = '百度推送链接失败!'; }
 
    //在添加和修改内容处定义了 INDEX_HTML
    if(defined('INDEX_HTML')) $html->index();
    if(defined('RELATION_HTML')) $html->create_relation_html($catid);
}

3、在批量生成方法crete_html.php 里边加入推送代码:

修改 modules/content/crete_html.php 文件534行左右,

找到:

$this->html->show($urls[1],$r,0,'edit',$r['upgrade']);

后面加入:

//百度推送
$bdurls[] = $r['url'];
$push_result = push_baidu($bdurls);
$msg = '';
if($push_result['success'] < 1){
$msg = '百度联盟推送链接失败!';
}

这样就实现了在编辑、发布文章,以及批量生成内容页的时候,实时主动推送文章URL到百度平台。

以上就是关于phpcms自动推送到百度站长平台的所有内容,希望可以帮到大家,欢迎找小编一起交流~