以下介绍如何通过简单的修改来对帝国cms系统增加百度主动提交URL的功能,以方便以发布文章的时候提交到百度。

只需要简单的修改以下3个文件即可,前提条件是必须要先在百度站长平台绑定站点,并且获取到token。

找到ecmsinfo.php,添加以下代码:

elseif($enews== "Post_Baidu_sitemap") 

{

    $id = $_POST['id'];

    $urls = $_POST['titleurl'];

    ePostBaiduSitemap($id, $urls);
}

找到:listinfo.php ,添加提交按钮代码:

<input type="submit" name="Submit101" value="百度URL主动提交" onClick="document.listform.enews.value='Post_Baidu_sitemap';document.listform.action='ecmsinfo.php';"> 

 

找到userfun.php,添加提交函数放在第二行后面:

//发送给百度时时更新——————————-  

function ePostBaiduSitemap($id, $_urls) {

    $site = 'https://www.moban5.cn'; //你的网站域名  

    $token = '百度获取到的token填这里'; //百度给的token  

    $countcount = count($id);

    if (empty($count)) {

        printerror("未选择信息ID", "", 1, 0, 1);

    }    $urls = array();

    for ($i = 0; $i < $count; $i++) {

        $id[$i] = (int) $id[$i];

        if (array_key_exists($id[$i], $_urls)) {

            $urls[] = $_urls[$id[$i]];

        }

    }

    $api = "http://data.zz.baidu.com/urls?site=$site&token=$token";

    $ch = curl_init();

    $options = array(CURLOPT_URL = > $api, CURLOPT_POST = > true, CURLOPT_RETURNTRANSFER = > true, CURLOPT_POSTFIELDS = > implode("n", $urls), CURLOPT_HTTPHEADER = > array('Content-Type: text/plain'), );

    curl_setopt_array($ch, $options);

    $result = curl_exec($ch);

    $httpstat = curl_getinfo($ch, CURLINFO_HTTP_CODE);

    curl_close($ch);

    if ($httpstat == 200) {

        $obj = json_decode($result);

        printerror("今天剩余{$obj->remain}条,成功提交{$obj->success}条", "", 1, 0, 1);

    } else {

        printerror('推送失败', "", 1, 0, 1);

    }

}

以上就是帝国CMS二次开发增加百度主动提交URL功能修改方法

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。