WordPress发布文章自动主动推送提交MIP/AMP页面

相信很多Wordpress站点针对自己的站点做了MIP改造以及AMP改造,一般都是通过安装MIP插件以及AMP插件实现的AMP页面和MIP页面,文章的AMP地址一般都是在文章原地址后面加后缀 /amp/或者 ?amp ,MIP地址的则加相应加后缀 /mip/ 或 ?mip。所以想在发布文章或者页面时自动主动推送提交MIP页面以及AMP 页面的,只需要将以下代码添加到当前主题的 functions.php 文件最后一个 ?> 的前面即可。

WordPress 发布文章自动推送 MIP

/**
* WordPress 发布文章自动推送 MIP
*/
if(!function_exists('Baidu_mip')){
    function Baidu_mip($post_ID) {
        //已成功推送的文章不再推送
        if(get_post_meta($post_ID,'Baidumip',true) == 1) return;
        $url = get_permalink($post_ID);
        if(get_post_type($post_ID)=='page'){
        $url=$url.'?mip';
        }
       if(get_post_type($post_ID)=='post'){
        $url=$url.'/mip/';
        }
        $api = 'http://data.zz.baidu.com/urls?site=网站首页地址&token=你的密钥&type=mip';
        $request = new WP_Http;
        $result = $request->request( $api , array( 'method'=> 'POST', 'body' => $url , 'headers' => 'Content-Type: text/plain') );
        $result = json_decode($result['body'],true);
        //如果推送成功则在文章新增自定义栏目 Baidumip,值为 1
        if (array_key_exists('success_mip',$result)) {
            add_post_meta($post_ID, 'Baidumip', 1, true);
        }
    }
    add_action('publish_post', 'Baidu_mip', 0);

WordPress 发布文章自动推送 AMP

/**
* WordPress 发布文章自动推送 AMP
*/
if(!function_exists('Baidu_amp')){
    function Baidu_amp($post_ID) {
        //已成功推送的文章不再推送
        if(get_post_meta($post_ID,'Baiduamp',true) == 1) return;
        $url = get_permalink($post_ID);
        if(get_post_type($post_ID)=='page'){
        $url=$url.'?amp';
        }
       if(get_post_type($post_ID)=='post'){
        $url=$url.'/amp/';
        }
        $api = 'http://data.zz.baidu.com/urls?site=网站首页地址&token=你的密钥&type=amp';
        $request = new WP_Http;
        $result = $request->request( $api , array( 'method' => 'POST', 'body' => $url , 'headers' => 'Content-Type: text/plain') );
        $result = json_decode($result['body'],true);
        //如果推送成功则在文章新增自定义栏目 Baiduamp,值为 1
        if (array_key_exists('success_amp',$result)) {
            add_post_meta($post_ID, 'Baiduamp', 1, true);
        }
    }
    add_action('publish_post', 'Baidu_amp', 0);

相关文章