陈老师知天下 發表於 2023-5-24 00:00:00

织梦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">&lt;?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&lt;"</code><code class="php plain">.</code><code class="php variable">$dayEnd</code><code class="php plain">.</code><code class="php string">" AND pubdate&gt;"</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">-&gt;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">-&gt;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&amp;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 =&gt; </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 =&gt; true,</code>
</div>
                                                                <div class="line number25 index24 alt2">
                                                                        <code class="php spaces"> </code><code class="php plain">CURLOPT_RETURNTRANSFER =&gt; true,</code>
</div>
                                                                <div class="line number26 index25 alt1">
                                                                        <code class="php spaces"> </code><code class="php plain">CURLOPT_POSTFIELDS =&gt; 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 =&gt; </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">?&gt;</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&amp;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 =&gt; </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 =&gt; true,</code>
</div>
                                                                <div class="line number9 index8 alt2">
                                                                        <code class="php spaces"> </code><code class="php plain">CURLOPT_RETURNTRANSFER =&gt; true,</code>
</div>
                                                                <div class="line number10 index9 alt1">
                                                                        <code class="php spaces"> </code><code class="php plain">CURLOPT_POSTFIELDS =&gt; 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 =&gt; </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]
查看完整版本: 织梦sitemap地图实时推送给百度的教程