刘连康:phpcms v9实现发布文章主动推送(实时)给百度的方法

刘连康 网站建设评论4,7593字数 2141阅读7分8秒阅读模式

前一段时间,康哥就已经陆续给大家分享过了织梦和wordpress等开源程序,实现在后台发布文章就可以直接把链接主动推送(实时)给百度的方法。

 

像这样很详细的教程,大家也都纷纷表示写得非常的好!

 

今天康哥就趁热打铁,继续给大家分享phpcms v9实现发布文章主动推送(实时)给百度的方法,希望对你们有所帮助。

 

还真别说,phpcms v9这个程序挺好用的,不但容易二次开发,也很利于SEO,因为它可以实现前台生成静态网页。

 

好了,先不废话那么多。康哥现在就来教大家如何在phpcms v9后台就可以实现发布文章主动推送(实时)给百度的方法。

 

为了方便举例说明,康哥今天就拿一个phpcms v9制作的网站(www.xiujie56.com)来给大家做一下示范吧。

 

主要有以下3个步骤:

 

1、登录FTP,找到phpcms的函数目录libs/functions/下的拓展函数文件extention.func.php文件,我们就在这个文件里面添加自定义百度推送函数,也就是在?>的前面添加。

 

康哥推荐大家使用Notepad++这个代码编辑器来进行修改,这个是免费的。千万不要用txt记事本修改代码,要不然文件头部可能会出现bom信息,造成模板错位!

 

详情请看下图:

刘连康:phpcms v9实现发布文章主动推送(实时)给百度的方法

康哥在这里就给大家分享一下这段代码好了,然后你们自己把代码里面的API接口调用地址修改成自己的即可。

/**
 * baidu推送 
 * @return result
 */
function push_baidu($bdurls){
    $api = 'http://data.zz.baidu.com/urls?site=www.xiujie56.com&token=RyVub75SqbRkLu0k';
    $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;
}

大家请注意:一定要记得把代码里面的API接口调用地址修改成自己的,也就是这一段:http://data.zz.baidu.com/urls?site=www.xiujie56.com&token=RyVub75SqbRkLu0k。

 

你自己网站是什么样的api接口,可以自己登录百度搜索资源平台查看,(位置:链接提交》自动提交》主动推送)。

 

2、同样是登录FTP,在phpcms目录phpcms/model/找到content_model.class.php文件

 

使用Notepad++代码编辑器打开content_model.class.php文件,我们就在第224行那里添加一段代码,直接使用Ctrl+G的方式就可以定位到224行。添加了这段代码之后,我们就可以实现在编辑发布提交函数中调用该方法,做到实时推送。

 

详情看下图:

刘连康:phpcms v9实现发布文章主动推送(实时)给百度的方法

康哥在这里也同样给大家分享一下这段代码,直接原封不动的复制粘贴进去即可,这段代码不需要修改的。

//百度推送
    $bdurls[] = 'http://'.SITE_URL.$urls[1];
    $push_result = push_baidu($bdurls);
    $msg = '';
    if ($push_result['success'] < 1) { $msg = '百度推送链接失败!'; }

 

3、最后,我们需要在批量生成crete_html.php文件里面加入推送代码。

 

具体操作方法也很简单,登录FTP,然后在phpcms目录phpcms/modules/content/找到crete_html.php文件。

 

使用Notepad++代码编辑器打开crete_html.php文件,我们就在第534行那里添加一段代码,也就是在$this->html->show($urls[1],$r,0,'edit',$r['upgrade']);的下面那行,直接使用Ctrl+G的方式就可以定位到第534行。

 

详情请看下图:

刘连康:phpcms v9实现发布文章主动推送(实时)给百度的方法

康哥也给大家分享一下这段代码,直接原封不动的复制粘贴进去即可,这段代码也不需要做什么修改。

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

这样我们也就成功的实现了在phpcms v9后台编辑、发布文章,以及批量生成内容页的时候,将文章主动推送给百度搜索引擎蜘蛛。以后再也不用写完一篇文章,就跑到百度搜索资源平台提交链接了,多方便啊!

 

本文为原创文章,版权归作者所有,未经授权,禁止抄袭,否则将追究法律责任!

欢迎转载,转载请注明作者和出处,谢谢!

作者:刘连康

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
刘连康
  • 本文由 发表于 2019年12月14日 20:40:03
刘连康:如何将wordpress5.8新版区块编辑器换回旧版本编辑器? 网站建设

刘连康:如何将wordpress5.8新版区块编辑器换回旧版本编辑器?

康哥昨天下午就把个人博客从wordpress5.7.2更新至wordpress5.8版本,升级完成之后,在外表上面看着好像是没什么问题,也没多大变化。 但是,到了晚上10点左右,康哥在个人博客上面写原...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定