2012-11-07 78 views
0

我有一系列約25個靜態網站,我創建了共享相同的信息,並且不得不改變這裏和那裏的副本inane位,所以我寫這個JavaScript,所以所有的網站拉內容來自一個位置。 (縮短爲一個例子)JS,PHP動態內容和谷歌爬行器

var dataLoc = "<?=$resourceLocation?>"; 
$("#listOne").load(dataLoc+"resources.html #listTypes"); 

頁面加載時,會找到它的DIV ID那麼listOne然後用的div在文件resources.html內容,只有那裏的DIV標記listTypes的內容替換。

我的問題:Google沒有抓取這個動態內容,我被告知Google會動態抓取導入的信息,所以我很想知道是什麼我現在正在做什麼需要改進?

我認爲js只是被谷歌蜘蛛所跳過,所以我用PHP來訪問之前使用過的相同的HTML文件,它工作的很少,但它不工作,我需要它。這將返回文本,但我也需要標記,<li>, <p><img>標籤等等。也許我可以調整這個? (我不是一個開發人員,所以我剛纔想了幾十個事情,我的PHP在線幫助閱讀,這是接近我得到)

function parseContents($divID) 
    { 


    $page = file_get_contents('content/resources.html'); 
    $doc = new DOMDocument(); 

    @$doc->loadHTML($page); 
    $divs = $doc->getElementsByTagName('div'); 

    foreach($divs as $div) 
     { 
     if ($div->getAttribute('id') === $divID) 
      { 
      echo $div->nodeValue; 
      } 
     } 


    } 

parseContents('listOfStuff'); 

感謝您的幫助理解這一點更好,讓我知道我是否需要更好地解釋它:)

回答

1

請參閱由Google發佈的Making AJAX Applications Crawlable

+0

現在去看看這個,謝謝你的建議。這是我沒有想到的搜索字詞。謝謝:) –

+0

對此答案+1,但這意味着您必須以「靜態」形式提供該信息。如果你正在考慮一個新的網站,但如果在現有的開發中維護快照或將其自動化,這將意味着一些工作。 –

+0

謝謝你們。我還沒有弄明白,打算休息一下並重新閱讀Google頁面,但是我想我可以使用我想出的PHP代碼創建一個動態截圖,如果正確操作它的話。目前,PHP使用完全相同的內容,但刪除了標記,這對Google來說應該是很好的......有點不在我的聯盟中,但這是我們學習的方式:)再次感謝! –