カスタムナビゲーションを含み、タイトルに基づいてページを取得する作業WordPressサイトがあります。そのため、test
というページがあり、ユーザーがカスタムナビゲーションでtest
を選択したとします。配置されるhref
リンクは#!test
になります。これで、Ajax
のコンテンツを呼び出すためにtest
を完全に使用し、次のようになります。
$.ajax({
url: "/thenewsite/wp-content/plugins/mass/return_body.php",
type: "post",
dataType: "json",
data:
{
'key_page' : key_page,
'function' : 'page_grab'
},
.....
});
return_body.php
:
$base = 'http://www.massmedicalstorage.com/thenewsite';
if ($fragment = $_GET['_escaped_fragment_']) {
$page = get_page_by_title($fragment);
print_r ($page);
exit;
}
$DBH = createConnection();
$response = array("status" => "ok", "code" => 1, "original_request" => $_POST); // CREATE REQUEST
if($_POST['function'] == 'page_grab')
{
$page = get_page_by_title($_POST['key_page']);
$response['data_retrieved'] = $page;
if($page !== null)
$response['status'] = "found";
}
Ajax
関数は、要求されたデザインに基づいて取得されたコンテンツを配置します。
私にとって灰色のエリアは、Google
をSEO
ajax
の目的で正しく操作していますか? _escaped_fragment_
セクションでコンテンツを正しく返していますか?また、Googleがajax
コンテンツを取得しているかどうかを確認するにはどうすればよいですか? snapshot
のhtml
を適切に取得していない場合、どうすれば正しく取得できますか?
Ajaxベースのページをクロールしていることを知るには、Googleに適切なメタタグが必要です。本質的に、Googleはエスケープされたフラグメントを検出すると、クエリ文字列に置き換えて、代わりにそのページをプルします。これにより、Ajaxページがクロール可能になります。別の方法は、HTML履歴APIを使用し、ajax呼び出しを行うときにURLを更新することです。このように、HashBang/Google&Bing ajaxのクロールスペックでは、あまりにも馬鹿げたことはありません。これは100%動作しますが、html履歴はこれを行うための新しくてより良い方法であり、よりクリーンなURLを取得します。また、実際のページが正常にロードされるため、javascriptを配置していないユーザーに大きなフォールバックを提供します。