织梦sitemap地图实时推送给百度的教程
<p>在之前,织梦有一套自己主动ping百度的插件,但是后来用不了了,最后百度推出了实时推送链接地址到百度,这样要比sitemap方便好用多了,而且还能保证文章的原创,下面我通过查阅相关资料,根据百度的接口写了一篇sitemap地图实时推送给百度的处理办法,分享给大家。</p>
<p>
关于织梦的百度实时推送我写了两种方法,大家可以自行选择:</p>
<p>
<strong>1.手动创建一个文件,每天访问这个文件就可以把当天的全部文章推送到百度搜索引擎. 在根目录下面创建一个tuisong.php 访问后会返回百度接口结果</strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterphp" id="highlighter_274206">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
<div class="line number21 index20 alt2">
21</div>
<div class="line number22 index21 alt1">
22</div>
<div class="line number23 index22 alt2">
23</div>
<div class="line number24 index23 alt1">
24</div>
<div class="line number25 index24 alt2">
25</div>
<div class="line number26 index25 alt1">
26</div>
<div class="line number27 index26 alt2">
27</div>
<div class="line number28 index27 alt1">
28</div>
<div class="line number29 index28 alt2">
29</div>
<div class="line number30 index29 alt1">
30</div>
<div class="line number31 index30 alt2">
31</div>
<div class="line number32 index31 alt1">
32</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="php plain"><?php</code>
</div>
<div class="line number2 index1 alt1">
<code class="php keyword">require_once</code> <code class="php plain">(</code><code class="php string">"include/common.inc.php"</code><code class="php plain">);</code>
</div>
<div class="line number3 index2 alt2">
<code class="php keyword">require_once</code> <code class="php string">"include/arc.partview.class.php"</code><code class="php plain">;</code>
</div>
<div class="line number4 index3 alt1">
<code class="php keyword">require_once</code><code class="php plain">(</code><code class="php string">'include/charset.func.php'</code><code class="php plain">);</code>
</div>
<div class="line number5 index4 alt2">
<code class="php variable">$year</code> <code class="php plain">= </code><code class="php functions">date</code><code class="php plain">(</code><code class="php string">"Y"</code><code class="php plain">);</code>
</div>
<div class="line number6 index5 alt1">
<code class="php variable">$month</code> <code class="php plain">= </code><code class="php functions">date</code><code class="php plain">(</code><code class="php string">"m"</code><code class="php plain">);</code>
</div>
<div class="line number7 index6 alt2">
<code class="php variable">$day</code> <code class="php plain">= </code><code class="php functions">date</code><code class="php plain">(</code><code class="php string">"d"</code><code class="php plain">);</code>
</div>
<div class="line number8 index7 alt1">
<code class="php variable">$dayBegin</code> <code class="php plain">= </code><code class="php functions">mktime</code><code class="php plain">(0,0,0,</code><code class="php variable">$month</code><code class="php plain">,</code><code class="php variable">$day</code><code class="php plain">,</code><code class="php variable">$year</code><code class="php plain">);</code><code class="php comments">//当天开始时间戳</code>
</div>
<div class="line number9 index8 alt2">
<code class="php variable">$dayEnd</code> <code class="php plain">= </code><code class="php functions">mktime</code><code class="php plain">(23,59,59,</code><code class="php variable">$month</code><code class="php plain">,</code><code class="php variable">$day</code><code class="php plain">,</code><code class="php variable">$year</code><code class="php plain">);</code><code class="php comments">//当天结束时间戳</code>
</div>
<div class="line number10 index9 alt1">
<code class="php variable">$query</code> <code class="php plain">= </code><code class="php string">"SELECT arch.id,types.typedir FROM dede_arctype as types inner join dede_archives as arch on types.id=arch.typeid where pubdate<"</code><code class="php plain">.</code><code class="php variable">$dayEnd</code><code class="php plain">.</code><code class="php string">" AND pubdate>"</code><code class="php plain">.</code><code class="php variable">$dayBegin</code><code class="php plain">.</code><code class="php string">""</code><code class="php plain">; </code><code class="php comments">//这里dede换成你们自己的表前缀</code>
</div>
<div class="line number11 index10 alt2">
<code class="php variable">$urls</code><code class="php plain">=</code><code class="php string">""</code><code class="php plain">;</code>
</div>
<div class="line number12 index11 alt1">
<code class="php variable">$dsql</code><code class="php plain">->Execute(</code><code class="php string">'arch.id,types.typedir'</code><code class="php plain">,</code><code class="php variable">$query</code><code class="php plain">);</code>
</div>
<div class="line number13 index12 alt2">
<code class="php keyword">while</code><code class="php plain">(</code><code class="php variable">$row</code> <code class="php plain">= </code><code class="php variable">$dsql</code><code class="php plain">->GetArray(</code><code class="php string">'arch.id,types.typedir'</code><code class="php plain">))</code>
</div>
<div class="line number14 index13 alt1">
<code class="php plain">{</code>
</div>
<div class="line number15 index14 alt2">
<code class="php spaces"> </code><code class="php variable">$urls</code><code class="php plain">.=</code><code class="php string">"http://www.baidu.com"</code><code class="php plain">.</code><code class="php functions">str_replace</code><code class="php plain">(</code><code class="php string">"{cmspath}"</code><code class="php plain">,</code><code class="php string">""</code><code class="php plain">,</code><code class="php variable">$row</code><code class="php plain">[</code><code class="php string">'typedir'</code><code class="php plain">]).</code><code class="php string">"/"</code><code class="php plain">.</code><code class="php variable">$row</code><code class="php plain">.</code><code class="php string">".html"</code><code class="php plain">.</code><code class="php string">","</code><code class="php plain">; </code>
</div>
<div class="line number16 index15 alt1">
<code class="php spaces"> </code><code class="php comments">//将上边的http://baidub.com换成你的网址</code>
</div>
<div class="line number17 index16 alt2">
<code class="php plain">}</code>
</div>
<div class="line number18 index17 alt1">
<code class="php variable">$urls</code><code class="php plain">=</code><code class="php functions">substr</code><code class="php plain">(</code><code class="php variable">$urls</code><code class="php plain">,0,-1);</code>
</div>
<div class="line number19 index18 alt2">
<code class="php variable">$urls</code> <code class="php plain">= </code><code class="php functions">explode</code><code class="php plain">(</code><code class="php string">","</code><code class="php plain">,</code><code class="php variable">$urls</code><code class="php plain">);</code>
</div>
<div class="line number20 index19 alt1">
<code class="php variable">$api</code> <code class="php plain">= </code><code class="php string">'http://data.zz.baidu.com/urls?site=www.baidu.com&token=hereistoken'</code><code class="php plain">; // 前边的site换成自己的site xxx换成自己的密钥</code>
</div>
<div class="line number21 index20 alt2">
<code class="php variable">$ch</code> <code class="php plain">= curl_init();</code>
</div>
<div class="line number22 index21 alt1">
<code class="php variable">$options</code> <code class="php plain">= </code><code class="php keyword">array</code><code class="php plain">(</code>
</div>
<div class="line number23 index22 alt2">
<code class="php spaces"> </code><code class="php plain">CURLOPT_URL => </code><code class="php variable">$api</code><code class="php plain">,</code>
</div>
<div class="line number24 index23 alt1">
<code class="php spaces"> </code><code class="php plain">CURLOPT_POST => true,</code>
</div>
<div class="line number25 index24 alt2">
<code class="php spaces"> </code><code class="php plain">CURLOPT_RETURNTRANSFER => true,</code>
</div>
<div class="line number26 index25 alt1">
<code class="php spaces"> </code><code class="php plain">CURLOPT_POSTFIELDS => implode(</code><code class="php string">"\n"</code><code class="php plain">, </code><code class="php variable">$urls</code><code class="php plain">),</code>
</div>
<div class="line number27 index26 alt2">
<code class="php spaces"> </code><code class="php plain">CURLOPT_HTTPHEADER => </code><code class="php keyword">array</code><code class="php plain">(</code><code class="php string">'Content-Type: text/plain'</code><code class="php plain">),</code>
</div>
<div class="line number28 index27 alt1">
<code class="php plain">);</code>
</div>
<div class="line number29 index28 alt2">
<code class="php plain">curl_setopt_array(</code><code class="php variable">$ch</code><code class="php plain">, </code><code class="php variable">$options</code><code class="php plain">);</code>
</div>
<div class="line number30 index29 alt1">
<code class="php variable">$result</code> <code class="php plain">= curl_exec(</code><code class="php variable">$ch</code><code class="php plain">);</code>
</div>
<div class="line number31 index30 alt2">
<code class="php functions">echo</code> <code class="php variable">$result</code><code class="php plain">.</code><code class="php functions">count</code><code class="php plain">(</code><code class="php variable">$urls</code><code class="php plain">);</code>
</div>
<div class="line number32 index31 alt1">
<code class="php plain">?></code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
查看推送反馈</p>
<p>
推送成功</p>
<p>
状态码为200,可能返回以下字段:<br>
字段 是否必选 参数类型 说明<br>
success 是 int 成功推送的url条数<br>
remain 是 int 当天剩余的可推送url条数<br>
not_same_site 否 array 由于不是本站url而未处理的url列表<br>
not_valid 否 array 不合法的url列表<br>
成功返回示例:</p>
<p>
</p>
<div class="codetitle">
<span><u>复制代码</u></span> 代码如下:</div>
<div class="codebody" id="code11858">
<br>
{<br>
"remain":4999998,<br>
"success":2,<br>
"not_same_site":[],<br>
"not_valid":[]<br>
}</div>
<p>
</p>
<p>
推送失败</p>
<p>
状态码为4xx,返回字段有:<br>
字段 是否必传 类型 说明<br>
error 是 int 错误码,与状态码相同<br>
message 是 string 错误描述<br>
失败返回示例:</p>
<p>
</p>
<div class="codetitle">
<span><u>复制代码</u></span> 代码如下:</div>
<div class="codebody" id="code3572">
<br>
{<br>
"error":401,<br>
"message":"token is not valid"<br>
}</div>
<p>
</p>
<p>
<strong>2、第二种是发布一篇文章,就像百度推送一次,这种比较方便,我就是用这种</strong></p>
<p>
打开织梦后台的 article_add.php 文件.找到差不多262行的样子</p>
<p>
注意:<br>
如果你系统设置的-》核心选项</p>
<p>
<img style="max-width:100%!important;height:auto!important;"title="织梦sitemap地图实时推送给百度的教程" alt="织梦sitemap地图实时推送给百度的教程" src="https://zhuji.jb51.net/uploads/img/202305/7726265d8eec15ab6c69c547fb07a9c3.jpg"></p>
<p>
如果是否直接. 加入以下代码,否则 注意下面的提示</p>
<p>
<img style="max-width:100%!important;height:auto!important;"title="织梦sitemap地图实时推送给百度的教程" alt="织梦sitemap地图实时推送给百度的教程" src="https://zhuji.jb51.net/uploads/img/202305/dfa96313cfb1e6e79b21e2252f09914b.jpg"></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterphp" id="highlighter_414245">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="php comments">//百度推送</code>
</div>
<div class="line number2 index1 alt1">
<code class="php variable">$urls</code><code class="php plain">=</code><code class="php string">"http://www.baidu.com"</code><code class="php plain">.</code><code class="php variable">$artUrl</code><code class="php plain">;//前面域名换成你自己的 如果上面图片选择的是是 就把</code><code class="php string">"http://baidu.com"</code><code class="php plain">. 去掉</code>
</div>
<div class="line number3 index2 alt2">
<code class="php variable">$urls</code> <code class="php plain">= </code><code class="php functions">explode</code><code class="php plain">(</code><code class="php string">","</code><code class="php plain">,</code><code class="php variable">$urls</code><code class="php plain">);</code>
</div>
<div class="line number4 index3 alt1">
<code class="php variable">$api</code> <code class="php plain">= </code><code class="php string">'http://data.zz.baidu.com/urls?site=www.0cx.cc&token=hereistoken'</code><code class="php plain">; // 前边site换成自己的site xxx换成自己的密钥</code>
</div>
<div class="line number5 index4 alt2">
<code class="php variable">$ch</code> <code class="php plain">= curl_init();</code>
</div>
<div class="line number6 index5 alt1">
<code class="php variable">$options</code> <code class="php plain">= </code><code class="php keyword">array</code><code class="php plain">(</code>
</div>
<div class="line number7 index6 alt2">
<code class="php spaces"> </code><code class="php plain">CURLOPT_URL => </code><code class="php variable">$api</code><code class="php plain">,</code>
</div>
<div class="line number8 index7 alt1">
<code class="php spaces"> </code><code class="php plain">CURLOPT_POST => true,</code>
</div>
<div class="line number9 index8 alt2">
<code class="php spaces"> </code><code class="php plain">CURLOPT_RETURNTRANSFER => true,</code>
</div>
<div class="line number10 index9 alt1">
<code class="php spaces"> </code><code class="php plain">CURLOPT_POSTFIELDS => implode(</code><code class="php string">"\n"</code><code class="php plain">, </code><code class="php variable">$urls</code><code class="php plain">),</code>
</div>
<div class="line number11 index10 alt2">
<code class="php spaces"> </code><code class="php plain">CURLOPT_HTTPHEADER => </code><code class="php keyword">array</code><code class="php plain">(</code><code class="php string">'Content-Type: text/plain'</code><code class="php plain">),</code>
</div>
<div class="line number12 index11 alt1">
<code class="php plain">);</code>
</div>
<div class="line number13 index12 alt2">
<code class="php plain">curl_setopt_array(</code><code class="php variable">$ch</code><code class="php plain">, </code><code class="php variable">$options</code><code class="php plain">);</code>
</div>
<div class="line number14 index13 alt1">
<code class="php variable">$result</code> <code class="php plain">= curl_exec(</code><code class="php variable">$ch</code><code class="php plain">);</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
就OK了 ,如果想看添加成功没,可以在修改下面一两行的样子的代码</p>
<p>
</p>
<div class="codetitle">
<span><u>复制代码</u></span> 代码如下:</div>
<div class="codebody" id="code81546">
<br>
请选择你的后续操作".$result.$urls.":</div>
<p>
<br>
result是看百度返回的结果,urls是看你推送的url.</p>
<p>
</p>
<p>
基本上就OK了,如果你想让修改文章的时候也事实推送,就类似我上面一样去修改article_edit.php就好了.</p>
<p>
以上就是本文的全部内容,希望大家喜欢。</p>
頁:
[1]