var $searchEngines = array(
"http://www.google.com/webmasters/tools/ping?sitemap=",
"http://www.bing.com/webmaster/ping.aspx?siteMap="
);    
function submitSitemap($sitemapurl) {
$searchEngines = $this->searchEngines;
$result = array();
for($i=0;$i<sizeof($searchEngines);$i++) {
$submitSite = curl_init($searchEngines[$i].$sitemapurl);
curl_setopt($submitSite, CURLOPT_RETURNTRANSFER, true);
$responseContent = curl_exec($submitSite);
$response = curl_getinfo($submitSite);
$submitSiteShort = array_reverse(explode(".",parse_url($searchEngines[$i], PHP_URL_HOST)));
$result[] = array("site"=>$submitSiteShort[1].".".$submitSiteShort[0],
"fullsite"=>$searchEngines[$i].htmlspecialchars($this->sitemapFullURL, ENT_QUOTES,'UTF-8'),
"http_code"=>$response['http_code'],
"message"=>str_replace("\n", " ", strip_tags($responseContent)));
}
return $result;
}

解决方案 »

  1.   

    你是不懂哪一部分?
    是不知道sitemap干啥的?
    还是不知道那curl是什么?
      

  2.   

    curl和sitemap我都知道,我就是不知道为什么要提交到搜索引擎上去?提交上去又什么用,每做好一个网站都要提交吗?
      

  3.   

    不是提交到GOOGLE和bing上去了吗。
      

  4.   

    是这么回事, 搜索引擎是通过链接来抓一个页面的, 
    如果你是一个新站, 没有任何外链, 搜索引擎也无法通过链接来发现你, 
    这个时候就可以主动提交给搜索引擎, 让它来搜你. 以前只是提交一个url就可以了,比如很久前的yahoo,
    后来google搞了这个sitemap, 
    通过这个经常更新的xml文件,可以提供更多信息,让google更"好"地抓你的页面.
      

  5.   

    那我在另一个网站有一个友情链接,google抓了那一个网站的页面,google是否就会有了我的网站的链接了
      

  6.   

    你师傅这么做的目的,就是为了避免每做一个网站都要人工去提交给各大搜索引擎。用程序去提交,多好。CURL就是模拟表单提交的。
      

  7.   

    理论上是, 除非"另一个网站"被google列为垃圾....不过,因为现在的sitemap已经不单单是一个简单的url, 
    而是可以清楚告诉google你的网站所有页面和更新信息, 
    所以,大部分网站都主动提交sitemap以方便google抓取.