wecenter手工修改追加百度的push代码

wecenter 文章 精帖 2020-09-14 13:46 0 99 全屏看文

这个文章是我修改代码后顺手写的。

首先我们需要去 https://ziyuan.baidu.com/linksubmit/index 获取你的push地址

image.png


然后到wecenter的/app/publish/ajax.php中搜索 publish_article_action


然后在这个方法前追加php代码

public function ping_baidu($url){
	if(!$url){
		return '没有ping的地址'.$url;
	}
	$urls = array(
		$url
	);
	$api = '换成百度的push地址';
	$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);
	return $result;
}


然后在publish_article_action方法的最后面

 H::ajax_json_output(AWS_APP::RSM(array(
                'url' => $url
            ), 1, null));

修改为:

$ping_res = $this->ping_baidu($url);
H::ajax_json_output(AWS_APP::RSM(array(
                'url' => $url.'?pingmsg='.$ping_res
            ), 1, null));


这样在发布文章后就知道ping状态了。

比如这篇文章最后就会返回:

http://www.sanshu.cn/a/14366.html?pingmsg={"remain":99998,"success":1}

pingmsg后面就是百度的返回

remain: 99998  表示今天还能提交99998篇文章

success:1  表示提交成功


-EOF-