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 =  '//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 = '//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(同微信)
本站所有投放的广告是有其他网站提供,不代表本站立场,同时网站首页广告位对外出租详情咨询本站站长!同时欢迎广大站长加入个人建站团队