wordpress实现主动推送+熊掌号推送同步进行
今天给一个朋友http://www.myunigift.cn/ 这个站点是用wordpress,今天帮他改造熊掌号,于是做了数据同步推送。
只要把下面的代码写到funtions.php里面,发布文章的时候就会自动推送到百度了哦!
date_default_timezone_set('Asia/Shanghai'); add_action('publish_post', 'publish_bd_submit', 999); function publish_bd_submit($post_ID){ global $post; $bd_submit_enabled = true; if($bd_submit_enabled){ $api ='http://data.zz.baidu.com/urls?appid=yourID&token=your熊掌号token&type=realtime,original'; if($post->post_status != "publish"){ $url = get_permalink($post_ID); $ch = curl_init(); $options = array( CURLOPT_URL => $api, CURLOPT_POST => true, CURLOPT_RETURNTRANSFER => true, CURLOPT_POSTFIELDS => $url, CURLOPT_HTTPHEADER => array('Content-Type: text/plain') ); curl_setopt_array($ch, $options); $result = curl_exec($ch); // $result = json_decode($result, true); $time = time(); $file = dirname(__FILE__).'/by_baiduSubmit.txt';//生成日志文件,与代码所处文件同目录 if(date('Y-m-d',filemtime($file)) != date('Y-m-d')){ $handle = fopen($file,"w"); }else{ $handle = fopen($file,"a"); } $resultMessage=""; if($result['message']){ $resultMessage= date('Y-m-d G:i:s',$time)."\n提交失败".$result['message'].":\n网址:".$url."\n\n".$result; } if($result['success']){ $resultMessage= date('Y-m-d G:i:s',$time)."\n提交成功".":".$url."\n\n"; } fwrite($handle,$resultMessage); fclose($handle); } } if($bd_submit_enabled){ $api ='http://data.zz.baidu.com/urls?site=www.breakyizhan.com&token=yourtoken'; if($post->post_status != "publish"){ $url = get_permalink($post_ID); $ch = curl_init(); $options = array( CURLOPT_URL => $api, CURLOPT_POST => true, CURLOPT_RETURNTRANSFER => true, CURLOPT_POSTFIELDS => $url, CURLOPT_HTTPHEADER => array('Content-Type: text/plain') ); curl_setopt_array($ch, $options); $result = curl_exec($ch); // $result = json_decode($result, true); $time = time(); $file = dirname(__FILE__).'/by_baiduSubmit.txt';//生成日志文件,与代码所处文件同目录 if(date('Y-m-d',filemtime($file)) != date('Y-m-d')){ $handle = fopen($file,"w"); }else{ $handle = fopen($file,"a"); } $resultMessage=""; if($result['message']){ $resultMessage= date('Y-m-d G:i:s',$time)."\n提交失败".$result['message'].":\n网址:".$url."\n\n".$result; } if($result['success']){ $resultMessage= date('Y-m-d G:i:s',$time)."\n提交成功".":".$url."\n\n"; } fwrite($handle,$resultMessage); fclose($handle); } } }
千行代码,Bug何处藏。 纵使上线又怎样,朝令改,夕断肠。