Saya membaca yang berikut dan mencoba menerapkan skema ini ke situs web saya yang menjalankan WordPress: http://code.google.com/intl/fr-CA/web/ajaxcrawling/index.html
Jika Anda mengunjungi situs web saya di http://www.visualise.ca/ Anda akan melihat bahwa ia memuat posting di halaman beranda dan url menjadi http://visualise.ca/#!/anne-au-cherry saat ini pos dimuat. Versi statis dari konten yang sama tersedia untuk crawler di http://visualise.ca/anne-au-cherry tetapi jika pengunjung yang menggunakan browser mengunjunginya, ia akan diarahkan ke http://visualise.ca/#! / anne-au-cherry (ini dilakukan dengan javascript).
Untuk memberikan crawler yang dibutuhkan, ?_escaped_fragment_=
saya menggunakan peretasan WordPress yang saya temukan di internet: http://www.wordpress-fr.net/support/sujet-54810-add-action-parse-request dan sekarang GoogleBot dapat melihat konten dari halaman bertenaga AJAX saya. Saya pikir semuanya sudah selesai.
Tetapi ketika saya menempelkan tautan posting ke Facebook (yaitu) ia tidak dapat membaca konten halaman, jadi saya menduga situs web saya tidak benar-benar menghargai skema yang dijelaskan dalam dokumentasi Google karena Facebook mendukungnya (Jika Anda menempelkan http : //twitter.com/#! / gablabelle akan berfungsi). Jadi karena saya menggunakan plugin jQuery.address untuk mendapatkan hashbang (#!), Saya pergi ke situs web mereka dan mengunduh file sampel mereka untuk melihat apa perbedaan antara file mereka dan milik saya dan menyadari bahwa mereka mungkin menggunakan fungsi php untuk membuat snapshot HTML yang diperlukan: https://github.com/bartaz/jquery-address/blob/master/samples/crawling/index.php karena ini sebabnya, saya kira, Facebook tidak bisa membaca milik saya.
<?php
error_reporting(E_ALL ^ (E_NOTICE | E_WARNING));
$fragment = $_REQUEST['_escaped_fragment_'];
$file = 'data/' . (isset($fragment) && $fragment != '' && $fragment != '/' ? preg_replace('/\//', '', $fragment) : 'home') . '.xml';
$re = '/(^<[^>]*>)|(\n|\r\n|\t|\s{2,4})*/';
$handle = fopen($file, 'r');
if ($handle != false) {
$content = preg_replace($re, '', fread($handle, filesize($file)));
fclose($handle);
} else {
$content = 'Page not found!';
header(php_sapi_name() == 'cgi' ? 'Status: 404' : 'HTTP/1.1 404');
}
?>
Jadi tebakan saya adalah bahwa saya mungkin bisa menggunakan fungsi php yang serupa untuk melayani snapshot HTML daripada menggunakan hack WordPress tetapi saya perlu menyesuaikannya dengan WordPress. Masalahnya adalah saya bukan programmer dan saya melakukan yang terbaik sejauh ini.
Posting saya dalam format ini: http://visualise.ca/#!/anne-au-cherry dan versi statis tersedia di http://visualise.ca/anne-au-cherry (Di mana anne-au-cherry adalah siput posting dan perubahan tergantung pada halaman yang kami lihat).
Jadi pertanyaan saya adalah dapatkah seseorang mengonfirmasi bahwa saya berada di jalur yang benar dan jika mungkin juga membantu membuat fungsi php itu?
Terima kasih banyak atas waktu dan bantuan Anda!