返回舊版| 微信建站| 我要建站 | 建站學習 | 加入收藏
PHPCMS當前位置:首頁 > cms教程 > 綜合cms > PHPCMS > 正文

phpcms文章列表增加一鍵推送到百度功能

發布時間:2019-04-02 21:47:14   來源:   點擊:
推送到百度可以自動推送,也可以手動推送,自動推送教程網上可以搜到,自行搜索,這里是手動推送。
百度推送分為站長資源推送和熊掌號資源推送,api地址一樣,參數略有不同,這里把兩種都放進去了!
(1)打開phpcms\modules\content\content.php
在最下邊增加推送方法
  1. /** 
  2.      * 一鍵推送百度 
  3.      */ 
  4.     public function push_bd() { 
  5.         $ids = $_POST['ids']; 
  6.         $ids = implode(',', $ids);//合并子欄目id 
  7.         if(!$ids) showmessage(L('you_do_not_check')); 
  8.         $catid = intval($_GET['catid']); 
  9.         if(!$catid) showmessage(L('missing_part_parameters')); 
  10.         $modelid = $this->categorys[$catid]['modelid']; 
  11.         $siteid = $this->categorys[$catid]['siteid']; 
  12.          
  13.         $data = $urls = array(); 
  14.         $this->db = pc_base::load_model('content_model');//引入content模型 
  15.         $this->db->set_model($modelid); 
  16.         $sql = "status=99 AND id IN ($ids)"
  17.         $order = "listorder desc, id desc"
  18.         $data = $this->db->select($sql, '*''', $order, '''id'); 
  19.         foreach($data as $v){ 
  20.              $urls[] = $v['url']; 
  21.         }; 
  22.          
  23.         /*獲取appid和appsecret*/ 
  24.         $this->site = pc_base::load_model('site_model'); 
  25.         $siteinfo   = $this->site->get_one(array('siteid'=>$siteid)); 
  26.         $setting    = json_decode($siteinfo['setting'], true); 
  27.         $bdtoken    = $setting['bdtoken'];//站長token 
  28.         $token      = $setting['xtoken'];//熊掌token 
  29.         $appid      = $setting['appid']; 
  30.         $domain     = parse_url($siteinfo['domain']); 
  31.         $siteurl    = $domain['host']; 
  32.          
  33.         $res1 = $res2 = ''
  34.         if(!empty($bdtoken)){ 
  35.             $bdapi =  'http://data.zz.baidu.com/urls?site='.$siteurl.'&token='.$bdtoken; 
  36.             $res1 = json_decode(self::baidu_push($bdapi, $urls), true); 
  37.         } 
  38.         if(!empty($token) && !empty($appid)){ 
  39.             $api = 'http://data.zz.baidu.com/urls?appid='.$appid.'&token='.$token.'&type=realtime'
  40.             $res2 = json_decode(self::baidu_push($api, $urls), true); 
  41.         } 
  42.         if($res1 || $res2){ 
  43.             $text = ''
  44.             if($res1['success']){ 
  45.                 $text .= '站長推送成功,成功數量'.$res1['success']; 
  46.             }else
  47.                 $text .= '站長推送失敗,失敗數量'.$res1['success']; 
  48.             } 
  49.             if($res2['success']){ 
  50.                 $text .= '------熊掌推送成功,成功數量'.$res2['success_realtime']; 
  51.             }else
  52.                 if($res2['remain_realtime']){ 
  53.                     $text .= '------熊掌推送失敗,失敗數量'.$res2['success_realtime']; 
  54.                 }else
  55.                     $text .= '------<font color="red">今日熊掌推送次數已用完</font>'
  56.                 }  
  57.             } 
  58.             showmessage($text,HTTP_REFERER,8000); 
  59.         }else { 
  60.             showmessage(L('operation_failure')); 
  61.         } 
  62.     } 
  63.      
  64.     /* 
  65.     ** 百度推送處理函數 
  66.     */ 
  67.     public function baidu_push($api, $urls){ 
  68.         $ch = curl_init(); 
  69.         $options =  array( 
  70.             CURLOPT_URL => $api, 
  71.             CURLOPT_POST => true
  72.             CURLOPT_RETURNTRANSFER => true
  73.             CURLOPT_POSTFIELDS => implode("\n", $urls), 
  74.             CURLOPT_HTTPHEADER => array('Content-Type: text/plain'), 
  75.         ); 
  76.         curl_setopt_array($ch, $options); 
  77.         $result = curl_exec($ch); 
  78.         return $result; 
  79.     } 
(2)phpcms\modules\content\templates\content_list.tpl.php
找到大概141行代碼:
  1. <input type="button" class="button" value="<?php echo L('remove');?>" onclick="myform.action='?m=content&c=content&a=remove&catid=<?php echo $catid;?>';myform.submit();"/> 
在下邊增加代碼:
  1. <input type="button" class="button" value="一鍵推送百度" onclick="myform.action='?m=content&c=content&a=push_bd&catid=<?php echo $catid;?>';myform.submit();"/> 

(3)phpcms\modules\admin\templates\site_add.tpl.php
找到大概135代碼:
  1. <tr> 
  2.    <th width="130" valign="top"><?php echo L('site_att_allow_ext')?></th> 
  3.    <td class="y-bg"><input type="text" class="input-text" name="setting[upload_allowext]" id="upload_allowext" size="50" value="<?php echo $setting['upload_allowext']?>"/></td> 
  4.  </tr>   
在下邊新增代碼:
  1. <tr> 
  2.     <th width="130" valign="top">百度推送Token</th> 
  3.     <td class="y-bg"><input type="text" class="input-text" name="setting[bdtoken]" id="bdtoken" size="50" value="<?php echo $setting['bdtoken']?>"/></td> 
  4.   </tr>  
  5.   <tr> 
  6.     <th width="130" valign="top">百度熊掌號設置</th> 
  7.     <td class="y-bg">Appid:<input type="text" class="input-text" name="setting[appid]" id="appid" size="20" value="<?php echo $setting['appid']?>"/> 
  8.     &nbsp;&nbsp;Toekn:<input type="text" class="input-text" name="setting[xtoken]" id="xtoken" size="20" value="<?php echo $setting['xtoken']?>"/> 
  9.     </td> 
  10.   </tr>  
同理phpcms\modules\admin\templates\site_add.tpl.php找到125行之后增加如上代碼:
  1. <tr> 
  2.     <th width="130" valign="top">百度推送Token</th> 
  3.     <td class="y-bg"><input type="text" class="input-text" name="setting[bdtoken]" id="bdtoken" size="50" value="<?php echo $setting['bdtoken']?>"/></td> 
  4.   </tr>  
  5.   <tr> 
  6.     <th width="130" valign="top">百度熊掌號設置</th> 
  7.     <td class="y-bg">Appid:<input type="text" class="input-text" name="setting[appid]" id="appid" size="20" value="<?php echo $setting['appid']?>"/> 
  8.     &nbsp;&nbsp;Toekn:<input type="text" class="input-text" name="setting[xtoken]" id="xtoken" size="20" value="<?php echo $setting['xtoken']?>"/> 
  9.     </td> 
  10.   </tr>   
第三步的具體位置可以根據自己需要放,找到對應的tr就行。
保存,更新后臺緩存,即可實現對百度的手動推送,


相關欄目
熱門文章
最新圖文
評論排行
版權所有:鄭州騰石網絡科技有限公司 備案信息:豫ICP備18019117號
站長QQ:2863868475 業務合作咨詢:15137100750(同微信)
本站所有投放的廣告是有其他網站提供,不代表本站立場,同時網站首頁廣告位對外出租詳情咨詢本站站長!同時歡迎廣大站長加入個人建站團隊
  • 建站客服
  • CMS仿站
  • CMS學習
  • 技術交流群:336572814
棋牌app源码 快3今天走势图 重庆时时骗局 香港赛马会平特论坛 大乐透走势新浪 河北时时11选五开奖结果 北京pk直播也可以玩吗 四肖三期內必中一期 时时彩开奖结果记录表 腾讯分分彩走势分析图 快乐十分任三软件杀号