WordPress纯代码添加百度站长推送功能-蚂蚁资源

WordPress纯代码添加百度站长推送功能

百度就是个逗逼,搞了熊掌号还没搞多久又调整业务,搞得我们老是改代码,还好百度并没有改站长快速推送的接口形式,只需要将之前熊掌号的实现接口换一下,修改下返回验证就差不多了,为了方便大家使用,我直接贴实现代码,大家可以直接复制。由于代码是DUX上取下来的,所以大家需要将所有函数换成自己的取配置项的函数名,不然会报错哟。使用DMD主题的用户可直接复制代码使用,完美同步DUX哟。

添加后台配置

在主题目录下的options.php文件中加入如下配置项:

$options[] = array(
        'name' => __('百度收录', 'haoui'),
        'type' => 'heading' );
    $options[] = array(
        'name' => __('百度收录', 'haoui'),
        'id' => 'bdtui_on',
        'std' => false,
        'desc' => ' 开启',
        'type' => 'checkbox');
    $options[] = array(
        'name' => '快速收录-推送API',
        'id' => 'bdtui_kuai_api',
        'std' => '',
        'desc' => '在百度搜索资源平台获得API;发布或更新文章前可选是否快速收录',
        'type' => 'text'); 
    $options[] = array(
        'name' => '普通收录-推送API',
        'id' => 'bdtui_api',
        'std' => '',
        'desc' => '在百度搜索资源平台获得API;发布或更新文章时默认推送到百度普通收录',
        'type' => 'text');

加入后,在后台主题设置页面可以看到如下设置项:

蚂蚁资源WordPress纯代码添加百度站长推送功能插图

WordPress纯代码添加百度站长推送功能

添加文章发布选项

在functions.php文件中加入如下代码,用以添加写文章时右侧百度推送选项。

// 百度推送 https://www.daimadog.com/6341.html

////////////////////////////////////////////////////////////////////////////////////////////////////

if( _hui('bdtui_on') ) add_action('publish_post', 'tb_post_to_baidu_tui');

function tb_post_to_baidu_tui() {

    global $post;

    $plink = get_permalink($post->ID);

    if( $plink ){

        if( _hui('bdtui_kuai_api') && isset($_POST['baidutui_kuai_on']) && $_POST['baidutui_kuai_on'] && !get_post_meta($post->ID, 'baidutui_kuai', true) ){

            $ch = curl_init();

            $options =  array(

                CURLOPT_URL            => _hui('bdtui_kuai_api'),

                CURLOPT_POST           => true,

                CURLOPT_RETURNTRANSFER => true,

                CURLOPT_POSTFIELDS     => $plink,

                CURLOPT_HTTPHEADER     => array('Content-Type: text/plain')

            );

            curl_setopt_array($ch, $options);

            $result = curl_exec($ch);

            update_post_meta($post->ID, 'baidutui_kuai', $result);

        }

        if( _hui('bdtui_api') && !get_post_meta($post->ID, 'baidutui', true) ){

            $ch = curl_init();

            $options =  array(

                CURLOPT_URL            => _hui('bdtui_api'),

                CURLOPT_POST           => true,

                CURLOPT_RETURNTRANSFER => true,

                CURLOPT_POSTFIELDS     => $plink,

                CURLOPT_HTTPHEADER     => array('Content-Type: text/plain')

            );

            curl_setopt_array($ch, $options);

            $result = curl_exec($ch);

            update_post_meta($post->ID, 'baidutui', $result);

        }

    }

}

if( _hui('bdtui_on') ) add_action( 'add_meta_boxes', 'tbcm_meta_boxs2' );

function tbcm_meta_boxs2() {

    add_meta_box( 'tb_baidu_tui', '百度收录', 'tb_baidu_tui_init', 'post', 'side', 'low' );

}

function tb_baidu_tui_init() {

    global $post;

    $tui = get_post_meta($post->ID, 'baidutui', true);

    $kuai = get_post_meta($post->ID, 'baidutui_kuai', true);

    echo '<br>';

    echo '<label><input type="checkbox" name="baidutui_kuai_on" id="">快速收录</label>';

    echo '<br>';

    echo '<br>';

    if( $kuai ){

        $kuaiObj = json_decode( $kuai );

        echo '<p><strong>快速收录:'.(isset($kuaiObj->success_daily)&&$kuaiObj->success_daily>0?'<span style="color:#46B450">推送成功</span>':'<span style="color:#FF5E52">推送失败</span>').'</strong></p>';

        echo '<p>推送结果:<code style="word-break:break-all">'.($kuai?$kuai:'').'</code></p>';

        echo '<br>';

    }

    if( $tui ){

        $tuiObj = json_decode( $tui );

        echo '<p><strong>普通收录:'.(isset($tuiObj->success)&&$tuiObj->success>0?'<span style="color:#46B450">推送成功</span>':'<span style="color:#FF5E52">推送失败</span>').'</strong></p>';

        echo '<p>推送结果:<code style="word-break:break-all">'.($tui?$tui:'').'</code></p>';

    }else{

        echo '<p><strong>普通收录:</strong>将在发布或更新文章时推送</p>';

    }

    echo '<input type="hidden" name="tb_baidu_tui_noncename" id="tb_baidu_tui_noncename" value="'.wp_create_nonce( plugin_basename(__FILE__) ).'" />';

}

添加上面代码后,在我们第一步添加的百度推送配置项中,勾选启用。然后点击新建文章,可以看到右侧多了一个名为百度收录的选项。

功能添加完成,只需要填入你的百度推送接口即可,百度推送接口在百度搜索资源平台可以看到。

可能这个代码浩子写得比较匆忙,并没有处理推送后的返回数据,直接将返回的json数据给输出来了。所以小白们还需要仔细查看百度搜索资源平台提供的推送返回字段的含义,不过这并不影响我们使用,改天有空我再改下代码吧,最近实在没空。

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"www.antziyuan.com",如遇到无法解压的请联系管理员!

蚂蚁资源 » WordPress纯代码添加百度站长推送功能

常见问题FAQ

免费下载或者VIP会员专享资源能否直接商用?
该资源仅供学习和研究传播,大家请在下载后24小时内删除,一切关于该资源商业行为与我们无关。 请勿将该软件进行商业交易、转载等行为,该软件只为研究、学习所提供,该软件使用后发生的一切问题与本站无关。
提示下载完但解压或打开不了?
最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
找不到素材资源介绍文章里的示例图片?
对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
蚂蚁资源
大家都喜欢的资源网站!
  • 47会员总数(位)
  • 793资源总数(个)
  • 3本周发布(个)
  • 0 今日发布(个)
  • 173稳定运行(天)

提供最优质的资源集合

立即查看 了解详情
升级SVIP尊享更多特权立即升级