本帖最后由 米拿现’ 于 2013-1-20 15:57 编辑

根据百度站长平台的提示(http://zhanzhang.baidu.com/tools/ping

网站程序可以通过PING RPC2服务自动提醒百度搜索引擎收录你的网站,实时的哦!

首先新建一个新文件,文件名自定,放DZX论坛的根目录!

我这里暂定名为: ping.php

这里修改网址,修改中文部分为你的!

开启了伪静态的ping.php代码用这个:

<?php
if(isset($_GET[‘action’]))
{
$canshu=$_GET[‘action’];
}

function postUrl($url, $postvar)
{
    $ch = curl_init();
    $headers = array(
        "POST ".$url." HTTP/1.0",
        "Content-type: text/xml; charset="utf-8"",
        "Accept: text/xml",
        "Content-length: ".strlen($postvar)
    );
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $postvar);
    $res = curl_exec ($ch);
    curl_close ($ch);
    return $res;
}

$baiduXML = "<?xml version="1.0" encoding="utf-8"?>
   <methodCall>
   <methodName>weblogUpdates.extendedPing</methodName>
   <params>
   <param><value><string>你的站名</string></value></param>
   <param><value><string>http://你的DZX网址/</string></value></param>
   <param><value><string>http://你的DZX网址/thread-$canshu-1-1.html</string></value></param>
   <param><value><string>http://你的DZX网址/forum.php?mod=rss</string></value></param>
   </params>
   </methodCall>";
$res = postUrl(‘http://ping.baidu.com/ping/RPC2’, $baiduXML);

if ( strpos($res, "<int>0</int>") )
{
        header ("Location:http://你的DZX网址/thread-$canshu-1-1.html");
}
else
{
        header ("Location:http://你的DZX网址/thread-$canshu-1-1.html#");
}
?>

没开启伪静态的ping.php用这个:
<?php
if(isset($_GET[‘action’]))
{
$canshu=$_GET[‘action’];
}

function postUrl($url, $postvar)
{
$ch = curl_init();
$headers = array(
"POST ".$url." HTTP/1.0",
"Content-type: text/xml; charset="utf-8"",
"Accept: text/xml",
"Content-length: ".strlen($postvar)
);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postvar);
$res = curl_exec ($ch);
curl_close ($ch);
return $res;
}

$baiduXML = "<?xml version="1.0" encoding="utf-8"?>
<methodCall>
<methodName>weblogUpdates.extendedPing</methodName>
<params>
<param><value><string>你的站名</string></value></param>
<param><value><string>http://你的DZX网址/</string></value></param>
<param><value><string>http://你的DZX网址/forum.php?mod=viewthread&tid=$canshu</string></value></param>
<param><value><string>http://你的DZX网址/forum.php?mod=rss</string></value></param>
</params>
</methodCall>";
$res = postUrl(‘http://ping.baidu.com/ping/RPC2’, $baiduXML);

if ( strpos($res, "<int>0</int>") )
{
header ("Location:http://你的DZX网址/forum.php?mod=viewthread&tid=$canshu");
}
else
{
header ("Location:http://你的DZX网址/forum.php?mod=viewthread&tid=$canshu#");
}
?>

修改文件sourceincludepostpost_newthread.php

DZX2.0

找到:
showmessage(‘post_newthread_succeed’, "forum.php?mod=viewthread&tid=$tid&extra=$extra", $param);

复制代码
替换为:
showmessage(‘post_newthread_succeed’, "ping文件的文件名称.php?action=$tid", $param);

复制代码
DZX2.5

找到:
showmessage(‘post_newthread_succeed’, $returnurl, $values, $param);
复制代码
替换为:
showmessage(‘post_newthread_succeed’, "ping文件的文件名称.php?action=$tid", $values, $param);

复制代码
Tips:

如果PING失败,那么你发新帖后跳转的网址最后面会有一个#号!

测试是否PING成功,也可以访问http://你的DZX网址/ping文件的文件名称.php?action=任意新帖子ID,不成功的话,网址后面会有#号。

记得顺手在这里提交一下你的BBS的RSS!
http://ping.baidu.com/ping.html
RSS地址是 http://你的DZX网址/forum.php?mod=rss

测试

发表评论

电子邮件地址不会被公开。 必填项已用*标注