0

同じ情報を共有する一連の約 25 の静的サイトを作成しましたが、あちこちで非常識なコピーを変更する必要があったため、この JavaScript を作成して、すべてのサイトが 1 つの場所からコンテンツを取得できるようにしました。(一例に短縮)

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

ページが読み込まれると、div id listOne が検出され、それがファイル resources.html 内の div のコンテンツに置き換えられ、そこにある listTypes というラベルの付いた div のコンテンツのみが置き換えられます。

私の質問: Google はこの動的コンテンツをまったくクロールしていません。Google は動的にインポートされた情報をクロールすると言われています。

js が Google スパイダーによってスキップされたと想定したので、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');

これをもう少しよく理解するためにあなたの助けをありがとう、私がそれをもっとよく説明する必要があるかどうか教えてください:)

4

1 に答える 1

1

Google が公開しているAJAX アプリケーションをクロール可能にするを参照してください。

于 2012-11-07T15:10:20.500 に答える