返回列表 发新帖

[dz教学] discuz教程:PING快速实现百度秒收录

[复制链接]
灌水成绩
872
主题
892
帖子
5533
积分
等级头衔
积分成就
  • 威望: 0
  • 贡献: 4641
  • 金钱: 0
  • 违规:
  • 在线时间:305 小时
  • 注册时间:2019-3-9
  • 最后登录:2019-12-8
个人勋章

官方

联系方式
QQ
发表在  2019-11-24 15:32:05 | 显示全部楼层 | 阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
一、利用百度搜索引擎的PING RPC2服务功能来达到搜索引擎快速收录帖子(推荐)
实现原理:
根据百度站长平台的提示,网站程序可以通过PING RPC2服务自动提醒百度搜索引擎收录你的网站,实时收录的哦!

实现办法:
1、首先新建一个新文件,文件名自定,放Discuz! X论坛的根目录!要自定名字的原因是,虽然百度提倡这么干,但是你不能老重复的提交啊,老虎屁股动不得!所以改名,以免别人捣蛋,你的站K了啥的,就别赖我了!
我这里暂定名为: ping_seo.php这里修改网址,将我的站点地址(http://www.lansjn.com)改为你的。
开启了伪静态的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://bbs.yeacome.com/</string></value></param>
<param><value><string>http://bbs.yeacome.com/thread-$canshu-1-1.html</string></value></param>
<param><value><string>http://bbs.yeacome.com/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://bbs.yeacome.com/thread-$canshu-1-1.html");
}
else
{
header ("Location:http://bbs.yeacome.com/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#");
}
?>

2、修改文件source\include\post\post_newthread.php,
Discuz X2.0找到
showmessage('post_newthread_succeed', "forum.php?mod=viewthread&tid=$tid&extra=$extra", $param);

替换为(其中ping_seo为你自己的自定义ping文件名称):
showmessage('post_newthread_succeed', "ping_seo.php?action=$tid", $param);

DZX2.5找到:
showmessage('post_newthread_succeed', $returnurl, $values, $param);

替换为(其中ping_seo为你自己的自定义ping文件名称):
showmessage('post_newthread_succeed', "ping文件的文件名称.php?action=$tid", $values, $param);


复制代码
OK,简单两步完成,需要花冤枉钱么?

Tips:
如果PING失败,那么你发新帖后跳转的网址最后面会有一个#号!
测试是否PING成功,也可以访问http://你的DZX网址/ping文件的文件名称.php?action=任意新帖子ID,不成功的话,网址后面会有#号。
今天的教程就到这里,大家有什么疑问欢迎来提问。


温馨提示:
1、在论坛里发表的文章仅代表作者本人的观点,与本网站立场无关。
2、论坛的所有内容都不保证其准确性,有效性,时间性。阅读本站内容因误导等因素而造成的损失本站不承担连带责任。
3、当政府机关依照法定程序要求披露信息时,论坛均得免责。
4、若因线路及非本站所能控制范围的故障导致暂停服务期间造成的一切不便与损失,论坛不负任何责任。
5、注册会员通过任何手段和方法针对论坛进行破坏,我们有权对其行为作出处理。并保留进一步追究其责任的权利。
6.添加QQ群随时获取新消息QQ群号:831240632

帖子地址: 

回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表