非插件的WordPress文章自动提交百度,在后台直接识别ID

google 2019-6-14 6784

非插件的WordPress文章自动提交百度,在后台直接识别ID。

/**
 * WordPress网站的百度主动推送的token值
 */
if(!function_exists('Baidu_Submit')){
    function Baidu_Submit($post_ID) {
        $WEB_TOKEN  = get_option('bzg_baiduappid'); //这里请换成你的网站的百度主动推送的token值
        $WEB_DOMAIN = get_option('home');
        //已成功推送的文章不再推送
        if(get_post_meta($post_ID,'Baidusubmit',true) == 1) return;
        $url = get_permalink($post_ID);
        $api = 'http://data.zz.baidu.com/urls?site='.$WEB_DOMAIN.'&token='.$WEB_TOKEN;
        $request = new WP_Http;
        $result = $request->request( $api , array( 'method' => 'POST', 'body' => $url , 'headers' => 'Content-Type: text/plain') );
        $result = json_decode($result['body'],true);
        //如果推送成功则在文章新增自定义栏目Baidusubmit,值为1
        if (array_key_exists('success',$result)) {
            add_post_meta($post_ID, 'Baidusubmit', 1, true);
        }
    }
    add_action('publish_post', 'Baidu_Submit', 0);
}


最新回复 (1)
全部楼主
  • google 2019-6-14
    0 2

    增强版
    直接将这些代码融入你的主题,将下面添加到主题的function.php文件上。

    /**
     * WordPress网站的百度主动推送的token值
     */
    if(!function_exists('Baidu_Submit')){
        function Baidu_Submit($post_ID) {
            $WEB_TOKEN  = get_option('bzg_baiduappid'); //这里请换成你的网站的百度主动推送的token值
            $WEB_DOMAIN = get_option('home');
            //已成功推送的文章不再推送
            if(get_post_meta($post_ID,'Baidusubmit',true) == 1) return;
            $url = get_permalink($post_ID);
            $api = 'http://data.zz.baidu.com/urls?site='.$WEB_DOMAIN.'&token='.$WEB_TOKEN;
            $request = new WP_Http;
            $result = $request->request( $api , array( 'method' => 'POST', 'body' => $url , 'headers' => 'Content-Type: text/plain') );
            $result = json_decode($result['body'],true);
            //如果推送成功则在文章新增自定义栏目Baidusubmit,值为1
            if (array_key_exists('success',$result)) {
                add_post_meta($post_ID, 'Baidusubmit', 1, true);
            }
        }
        add_action('publish_post', 'Baidu_Submit', 0);
    }
    //添加常规选项
    function bzg_register_fields() {
    register_setting( 'general', 'bzg_baiduappid' );
    add_settings_field( 'bzg_baiduappid', '<label for="bzg_baiduappid">这里请换成你的网站的百度主动推送的token值id</label>', 'bzg_fields_baiduappid', 'general' );
    }
    function bzg_fields_baiduappid() {
    $value = get_option( 'bzg_baiduappid', '' );
    echo '<textarea name="bzg_baiduappid" id="bzg_baiduappid"  class="text" rows="1">' . $value . '</textarea>';
    echo '<p class="description">这里请换成你的网站的百度主动推送的token值id</p>';
    }
    add_filter( 'admin_init' , 'bzg_register_fields' );

    需要在后台添加token值id

    设置》常规选项

    http://*****/wp-admin/options-general.php(*****换成你的域名)。

    如下图:


返回