NJCMS博客模块针对Google和百度增加博客Ping服务
由于是博客模块,必须开通自动Ping搜索引擎Goolge和百度的服务器,所以特意增加上了此功能。估计过2天google和百度就能收录此博客了。需要服务器或者虚拟主机php支持CURL模块,否则无法使用。
后台需要配置博客模块的"Ping谷歌和百度"开启状态。当此选项开启状态后,每次添加或者编辑博文时,系统会自动去Ping Google和百度的RPC2,以达到自动Ping服务。 后台配置博客界面如下
核心代码如下,有需要的人可以参考参考!
public function ping_service($pdata) {
if (Http::getSupport() == 1) {
Http::setWay(1);
} else {
return false;
}
$google_ping_url = 'http://blogsearch.google.com/ping/RPC2';
$googleXML = '';
$googleXML .= '<?xml version="1.0″?>' ."\n";
$googleXML .= '<methodCall>' ."\n";
$googleXML .= ' <methodName>weblogUpdates.extendedPing</methodName>' ."\n";
$googleXML .= ' <params>' ."\n";
$googleXML .= ' <param>' ."\n";
$googleXML .= ' <value>'. htmlspecialchars($pdata['title']) .'</value>' ."\n";
$googleXML .= ' </param>' ."\n";
$googleXML .= ' <param>' ."\n";
$googleXML .= ' <value>'. htmlspecialchars($this->config['SITE_CONFIG']['site_url']) .'</value>' ."\n";
$googleXML .= ' </param>' ."\n";
$googleXML .= ' <param>' ."\n";
$googleXML .= ' <value>'. htmlspecialchars($pdata['link_url']) .'</value>' ."\n";
$googleXML .= ' </param>' ."\n";
$googleXML .= ' <param>' ."\n";
$googleXML .= ' <value>'. htmlspecialchars(build_uri('index://blog/feed')) .'</value>' ."\n";
$googleXML .= ' </param>' ."\n";
$googleXML .= ' </params>' ."\n";
$googleXML .= '</methodCall>';
$google_header = array(
'POST '. $google_ping_url .' HTTP/1.0"',
'Accept: text/xml',
'Content-type: text/xml;charset="'. $this->config['WEB_CHARSET'] .'"',
'Content-length: '. strlen($googleXML),
);
$result_google = Http::doPost($google_ping_url, $googleXML, 5, $google_header);
$baidu_ping_url = 'http://ping.baidu.com/ping/RPC2';
$baiduXML = '';
$baiduXML .= '<?xml version="1.0" encoding="'. $this->config['WEB_CHARSET'] .'"?>' ."\n";
$baiduXML .= '<methodCall>' ."\n";
$baiduXML .= ' <methodName>weblogUpdates.extendedPing</methodName>' ."\n";
$baiduXML .= ' <params>' ."\n";
$baiduXML .= ' <param>' ."\n";
$baiduXML .= ' <value><string>'. htmlspecialchars($pdata['title']) .'</string></value>' ."\n";
$baiduXML .= ' </param>' ."\n";
$baiduXML .= ' <param>' ."\n";
$baiduXML .= ' <value><string>'. htmlspecialchars($this->config['SITE_CONFIG']['site_url']) .'</string></value>' ."\n";
$baiduXML .= ' </param>' ."\n";
$baiduXML .= ' <param>' ."\n";
$baiduXML .= ' <value><string>'. htmlspecialchars($pdata['link_url']) .'</string></value>' ."\n";
$baiduXML .= ' </param>' ."\n";
$baiduXML .= ' <param>' ."\n";
$baiduXML .= ' <value><string>'. htmlspecialchars(build_uri('index://blog/feed')) .'</string></value>' ."\n";
$baiduXML .= ' </param>' ."\n";
$baiduXML .= ' </params>' ."\n";
$baiduXML .= '</methodCall>';
$baidu_header = array(
'POST '. $baidu_ping_url .' HTTP/1.0"',
'Accept: text/xml',
'Content-type: text/xml;charset="'. $this->config['WEB_CHARSET'] .'"',
'Content-length: '. strlen($baiduXML),
);
$result_baidu = Http::doPost($baidu_ping_url, $baiduXML, 5, $baidu_header);
}
版权申明
本文系作者 @ninja911 原创发布在NinJa911 Blog站点。未经许可,禁止转载。
暂无评论数据