当前位置:首页 教程 CMS教程
全部
系统教程
软件教程
CMS教程
编程教程

软件简介
去评论 去报错

前言:

近期一篇名为《必应超越百度,成为中国第一搜索引擎》的文章在网络引起热议,当然也有不少专业人事表示这只是一个乌龙事件,认为美国网站研究机构 Statcounter 在5月份公布的统计数据中“微软的搜索引擎Bing(必应)以37.4%的市场份额超越百度的27.01% ,首次登上中国第一搜索引擎的宝座”的数据统计方法存在问题。

虽然百度在近几年的快速发展中为了挣钱使劲的在搜索页面中加入广告,或是在手机端强迫我下载百度APP,但作为一个只会用百度的我来说必应(bing)搜索引擎对于我而言太陌生了,同样的360搜索引擎也从来不用,唯一的例外是google搜索引擎,因为它能让我找到百度搜索找不到的内容。

但既然有人说了必应搜索超过了百度搜索而百度也有着不少的缺点,那么本着试一试的心态我打开了“Microsoft Edge”浏览器,因为我知道Microsoft Edge浏览器默认就是bing搜索引擎。

说真的,用过才发现使用必应搜索引擎找资料给我的感觉真的很NICE!!!为什么这么说呢?因为不论是找教程还是找学习资料我都能在bing搜索结果中很快的找到我需要的,而不是像百度搜索结果那样乱七八糟、还有看不见的广告,随时能让你迷路。


所以,我准备将自己的网站也接入必应的站长工具。

正好之前写了一篇《Pbootcms百度推送插件:定时全自动推送源码免费下载》,文章中给大家分享了怎么让PbootCMS管理系统实现全自动可定时百度推送功能,那么这次就分享一下怎么实现必应(bing)必应(bing)搜索引擎URL提交推送教程。

【还是划重点】

本文将介绍免费、好用的能实现全自动、定时自动向必应(bing)搜索引擎URL提交的方法(并附上源码下载链接)!

另外,本插件和上面提到的“百度推送方法”一样,源码只修改“ExtLabelController.php”一个文件,并且PbootCMS更新时不会更新或覆盖该文件,如果你需要百度的必应搜索引擎同时提交的话,可以自行参考《Pbootcms百度推送插件:定时全自动推送源码免费下载》将两个代码合并。

【Pbootcms必应(bing)搜索引擎URL提交功能实现教程】

第一步:打开“appsdmin iewdefaultsystemconfig.html”

1、找到“<li lay-id="t3">百度接口</li>”修改为“<li lay-id="t3">搜索引擎推送配置</li>”,这步不是必需,只是为了好看布局!

Pbootcms百度推送插件

2、找到并复制如下代码,放到下一行

<div class="layui-form-item">
    <label class="layui-form-label">快速收录token</label>
    <div class="layui-input-inline">
        <input type="text" name="baidu_ks_token" value="{$configs.baidu_ks_token.value}"placeholder="请输入快速收录token" class="layui-input">
    </div>
    <span class="layui-icon layui-icon-about tips" data-content="请到百度站长中心获取!"></span>
</div>

3、将复制的代码修改为正面内容:

<div class="layui-form-item">
    <label class="layui-form-label">必应收录token</label>
    <div class="layui-input-inline">
        <input type="text" name="bing_zz_token" value="{$configs.bing_zz_token.value}"placeholder="请输入必应收录token" class="layui-input">
    </div>
    <span class="layui-icon layui-icon-about tips" data-content='请到必应站长中心获取!'></span>
</div>

第二步:打开”appshomecontrollerExtLabelController.php“

1、找到 ”use coreasicController;“,在下面增加一行:

use appdminmodelsystemConfigModel;

2、找到”class ExtLabelController“,将其修改为”class ExtLabelController extends Controller“

3、找到”protected $content;“,在下面增加代码:

    private $model;
    public function __construct()
    {
        $this->model = new ConfigModel();
    }

4、找到方法”test()“,如下代码:

// 测试扩展单个标签
    public function test()
    {
        $this->content = str_replace('{pboot:userip}', get_user_ip(), $this->content);
    }

5、在”test(***){***}“后面增加代码:

public function auto_tool()
{
    $data = $this->model->getConfig();
    if (array_key_exists('expire_time',$data)) {
        $expire_time = $data["expire_time"];
        if (! $expire_time) {
            $expire_time = get_datetime(time() -60); // 如果字段存在,但值为空时 expire_time=当前时间-60s
            $this->model->modValue("expire_time", $expire_time);
        }
        if ($expire_time && strcmp($expire_time, get_datetime(time())) < 0) {
            ignore_user_abort(true);
            set_time_limit(7200);
            ob_start();
            ob_end_flush();
            flush();
            $rs1 = $this->post_bing();
            if ($rs1) {
                $expire_time = get_datetime(time() + 60 * 60 * 24); // 下一次执行时间
                $this->model->modValue("expire_time", $expire_time);
                return 'console.warn("必应推送结果:'.$rs1;
            }
        } else {
            return 'console.warn("时间未到,下次执行时间:'.$expire_time.'");';
        }
    } else {
        $expire_time = get_datetime(time() - 60 * 60 * 24); // 初始化执行时间
        $data = array(
            'name' => "expire_time",
            'value' => $expire_time,
            'type' => 2,
            'sorting' => 255,
            'description' => ''
        );
        $this->model->addConfig($data); //增加配置字段
    }
}

//必应推送
public function post_bing()
{   
    $domain = get_http_url();
    $urlList = [
        'siteUrl' => $domain, 'urlList' => []
    ];
    $ConfigData = $this->model->getConfig();
    if (array_key_exists('bing_zz_token',$ConfigData)) {
        $token = $ConfigData["bing_zz_token"];
        if (! $token) {
            alert_back('请先到系统配置中填写必应普通收录推送token值!');
        }
        if (!$sitemap_data = file_get_contents("$domain/sitemap.txt")) {
            alert_back('获取站点sitemap.txt失败,请检查!');
        }else{
            $value = explode("
", $sitemap_data);
            foreach ($value as $url) {
                $post_urls[] = $url;
            }
            $urlList["urlList"] = $post_urls;
        }
        $api = "https://ssl.bing.com/webmaster/api.svc/json/SubmitUrlbatch?apikey=$token";
        $result = $this->request($api, $urlList,"bing");
        var_dump($result); 
        if (array_key_exists('d',$result)) {
            return '成功推送' . count($post_urls) . '条!';
        }elseif(array_key_exists('ErrorCode',$result)){
            return '推送失败:'.$result->Message;
        } else {
            return '发生未知错误!';
        }
    }else {
        $data = array(
            'name' => "bing_zz_token",
            'value' => "",
            'type' => 2,
            'sorting' => 255,
            'description' => '必应站长密钥'
        );
        $this->model->addConfig($data); //增加配置字段
    }
}

// POST请求
function request($api, $urls, $type_)
{
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $api);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POST, true);
    if ($type_ == "baidu") {
        curl_setopt($ch, CURLOPT_POSTFIELDS, $urls);
        curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/plain'));
    } else {
        curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($urls));
        curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json; charset=utf-8'));
    }
    $result = curl_exec($ch);
    return json_decode($result);
}

第三步:在前端公共模板(一般是“footer.html”)底部添加下面代码:

<!--执行自动任务-->
<script src='/?p=/ExtLabel/auto_tool' async='async'></script>

至此,必应(bing)必应(bing)搜索引擎URL提交推送教程就结束了,最后到网站页面F12进入开发人员控制台,刷新页面就能查看到自动提交结果或打开“域名+/ExtLabel/auto_tool”触发提交!

Pbootcms百度推送插件

下载地址

普通下载

点击直接低速下载,因需宽带成本高速下载需扫码

本地低速下载

网盘下载

通过不限速阿里、蓝奏网盘高速下载(部分需要扫码)

站长声明:

1、本站资源仅供个人学习交流,请于下载后 24 小时内删除,不允许用于商业用途,否则法律问题自行承担。

2、如遇到资源无法下载请 点击报错,我们将尽快纠错。

3、如有侵犯您的版权,请联系我们,我们会尽快处理,并诚恳的向你道歉!

注意:如.zip压缩包无法打开请将后缀修改成.exe或使用其它压缩软件尝试。

文章评论

用户头像
匿名网友
发表评论
昵称

评论记录:

未查询到任何数据!

热门软件

pbootcms二次开发插件教程:实现搜索引擎蜘蛛爬虫日志分离

详细介绍PbootCMS二次开发插件教程,重点讲解如何利用插件或对pbootcms二次开发实现搜索引擎蜘蛛爬虫日志的分离功能,让用户更方便的查看爬虫日志。

pbootcms二次开发插件教程:简单实现pbootcms全站URL相对路径转绝对链接

本文将向您介绍如何在pbootCMS中简单实现全站url相对路径转绝对路径。,详细介绍通过对pbootcms简单的二次开发的具体步骤。

Pbootcms百度推送插件:定时全自动推送源码免费下载

Pbootcms免费插件下载:轻松实现百度推送定时发布,可自定义推送时间及间隔,自由设定百度推送计划

Pbootcms必应推送插件源码免费下载: 加速收录,多倍流量助力SEO优化

Pbootcms免费插件下载:轻松实现全自动必应推送,可自定义推送时间及间隔,让你的网站更快被搜索引擎发现

pbootcms二次开发插件教程:怎么简单实现tags标签随机排序

本文将向您介绍如何在pbootCMS中简单实现Tags标签的随机排序。通过简单对pbootcms简单的二次开发,详细介绍随机排序Tags标签具体实现方法。

猜你想看

Pbootcms百度推送插件:定时全自动推送源码免费下载

Pbootcms免费插件下载:轻松实现百度推送定时发布,可自定义推送时间及间隔,自由设定百度推送计划

pbootcms插件二次开发教程:怎么简单实现tags标签随机颜色和字体大小

本文将向您介绍如何在pbootCMS中简单实现Tags标签的随机排序。通过简单对pbootcms简单的二次开发,详细介绍Tags标签随机颜色和字体大小具体实现方法。

pbootcms二次开发插件教程:实现搜索引擎蜘蛛爬虫日志分离

详细介绍PbootCMS二次开发插件教程,重点讲解如何利用插件或对pbootcms二次开发实现搜索引擎蜘蛛爬虫日志的分离功能,让用户更方便的查看爬虫日志。

Pbootcms必应推送插件源码免费下载: 加速收录,多倍流量助力SEO优化

Pbootcms免费插件下载:轻松实现全自动必应推送,可自定义推送时间及间隔,让你的网站更快被搜索引擎发现

pbootcms二次开发插件教程:怎么简单实现tags标签随机排序

本文将向您介绍如何在pbootCMS中简单实现Tags标签的随机排序。通过简单对pbootcms简单的二次开发,详细介绍随机排序Tags标签具体实现方法。

pbootcms二次开发插件教程:简单实现pbootcms全站URL相对路径转绝对链接

本文将向您介绍如何在pbootCMS中简单实现全站url相对路径转绝对路径。,详细介绍通过对pbootcms简单的二次开发的具体步骤。

最新标签