WordPress 神马搜索 MIP 数据提交代码教程

leixue WordPress建站/百度MIP 2019-03-28 11:17:07 阅读(...) 评论(4)

子凡去年开始关注神马搜索的越来越多了,其中最大的关系源自于神马开始给网站带来了一些还不错的流量,算是得到了我的青睐吧,当然神马近年来最大的一个变化可能就属支持百度开源的 MIP 技术了,并且子凡也关注到一些 MIP 网站页面开始在什么生效和展现。

WordPress 神马搜索 MIP 数据提交

在神马上线支持 MIP 数据提交的第一时间,子凡就曾批量推送过 MIP 数据,由于泪雪博客采用 UA 方式实现的 MIP 页面适配,及时针对神马搜索的 UA 做了处理,无奈至今也并没有在神马搜索结果生效 MIP 缓存页面,而通过神马站长平台却无法得知具体原因,不过唯一可以肯定的是泪雪博客是绝对支持 MIP 技术和规范的,这点毋庸置疑。所以对于做独立 MIP 域名的站点来说,这或许会在神马得到一个抓取生效的优势哦,别问我为什么,直觉和经验。

好啦,说了这么多,其实是因为有人在泪雪博客留言问怎么把网站数据推送到神马,本来是想添加到原有的 MIP 插件中,斟酌后还是觉得目前不太合适,会给插件带来不必要的冗余,所以决定单独分享一个简单的教程和代码,想要折腾神马 MIP 数据提交或者 MIP Cache 清理功能的就动动手咯。

1
2
3
4
5
6
7
8
9
10
11
12
13
//WordPress 神马 MIP 数据提交代码
add_action('save_post', 'fanly_sm_mip_add', 10, 3);
function fanly_sm_mip_add($post_id, $post, $update){
	if($post->post_status != 'publish') return;
	$api = 'http://data.zhanzhang.sm.cn/push?site=&user_name=&resource_name=mip_add&token=';
	//请到神马站长平台 http://zhanzhang.sm.cn/open/mip 中复制接口调用地址过来即可
	$response = wp_remote_post($api, array(
		'headers' => array('Accept-Encoding'=>'','Content-Type'=>'text/plain'),
		'sslverify' => false,
		'blocking' => false,
		'body' => get_permalink($post_id)
	));
}

把以上代码加到你当前主题的 functions.php 文件中即可,如果你使用的是属于独立 MIP 域名版本,记住你是在那个主题下面发布文章,就添加到对应的主题中。

然后顺便贴出一下非 WordPress 的 PHP 版本利用 curl 功能推送数据,也可以实现批量推送,自由度比较高。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// 神马 MIP 数据提交代码 (PHP CURL 方式)
$urls = array(//此处 URL 部分根据自己实际情况调用
    'http://www.example.com/1.html',
    'http://www.example.com/2.html',
);
//请到神马站长平台 http://zhanzhang.sm.cn/open/mip 中复制接口调用地址过来即可
$api = 'http://data.zhanzhang.sm.cn/push?site=&user_name=&resource_name=mip_add&token=';
$ch = curl_init();
$options =  array(
    CURLOPT_URL => $api,
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POSTFIELDS => implode("\n", $urls),
    CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),
);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
echo $result;

如果你使用的其它程序,或者想要半自动或者手动提交,使用上面的代码应该还是非常容易实现的,例如你可以载入一个 txt 文件,每行一个,然后读取这个 txt 文件内容转换为数组,在执行这个 php 文件就可以实现自主批量提交啦,大家自由发挥吧!

另外在贴出一个 WordPress 神马 MIP-Cache 清理代码,基本用不带,手动清理的效果并不大,如果你还是想用,那就拿去吧!

1
2
3
4
5
6
7
8
9
10
11
12
13
//WordPress 神马 MIP-Cache 清理代码
add_action('save_post', 'fanly_sm_mip_add', 10, 3);
function fanly_sm_mip_add($post_id, $post, $update){
	if($post->post_status != 'publish') return;
	$api = 'http://data.zhanzhang.sm.cn/push?site=&user_name=&resource_name=mip_add&token=';
	//请到神马站长平台 http://zhanzhang.sm.cn/open/mip 中复制接口调用地址过来即可
	$response = wp_remote_post($api, array(
		'headers' => array('Accept-Encoding'=>'','Content-Type'=>'text/plain'),
		'sslverify' => false,
		'blocking' => false,
		'body' => get_permalink($post_id)
	));
}

好啦,其实 WordPress 推送数据真的非常简单,大多都是利用 WordPress 函数 wp_remote_post 来实现,其实也就是 WordPress 封装过的 curl 功能,多的就不介绍了,贴出代码完全是给一些不是特别熟悉 WordPress 的用户来直接使用。

除非注明,否则均为泪雪博客原创文章,禁止任何形式转载

本文链接:https://zhangzifan.com/wordpress-sm-mip-add.html

发表评论

  1. 唯美图
    1楼
    唯美图 2个月前 (03-30)

    神马一直不收录的站……….并且之前还有显示提交的sitemap 超过1W条限制,其实我才几百篇文章,1000多个链接~~

    • 张子凡
      回复
      张子凡 2个月前 (04-01)
      回复 @唯美图 :神马收录本身就很慢,并且对于许多小站点的收录并不友好。
  2. 鸟叔
    2楼
    鸟叔 2个月前 (03-28)

    不知道咋回事,sm站长平台登陆无反应。

    • 张子凡
      回复
      张子凡 2个月前 (03-29)
      回复 @鸟叔 :可能是你该换电脑了,哈哈哈,我表示一直都在正常使用