纯代码实现WordPress增加百度快速收录推送

在主题目录下的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纯代码添加百度站长推送功能

添加文章发布选项

在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数据给输出来了。所以小白们还需要仔细查看百度搜索资源平台提供的推送返回字段的含义,不过这并不影响我们使用,改天有空我再改下代码吧,最近实在没空。【文章转载自代码狗

人已赞赏
WordPress功能扩展代码

Tinymce编辑器高级功能扩展

2020-5-26 9:52:15

WordPress功能扩展代码

批量替换WordPress文章中关键词-可实现很多功能

2020-5-28 0:08:51

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索