Ho letto quanto segue e provo ad applicare questo schema al mio sito Web con WordPress: http://code.google.com/intl/fr-CA/web/ajaxcrawling/index.html
Se visiti il mio sito Web all'indirizzo http://www.visualise.ca/ vedrai che carica i post nella home page e l'URL diventa http://visualise.ca/#!/anne-au-cherry quando questo il post è caricato. Una versione statica dello stesso contenuto è disponibile per il crawler su http://visualise.ca/anne-au-cherry ma se un visitatore che utilizza un browser lo visita verrà reindirizzato a http://visualise.ca/#! / anne-au-cherry (questo viene fatto con javascript).
Per fornire al crawler il necessario ?_escaped_fragment_=
ho usato un hack di WordPress che ho trovato in rete: http://www.wordpress-fr.net/support/sujet-54810-add-action-parse-request e ora il GoogleBot può vedere il contenuto delle mie pagine basate su AJAX. Pensavo fosse tutto fatto.
Ma quando incollo un link di post su Facebook (cioè) non è in grado di leggere il contenuto della pagina, quindi ho indovinato che il mio sito Web non rispetta realmente lo schema descritto nella documentazione di Google poiché Facebook lo supporta (se si incolla http : //twitter.com/#! / gablabelle funzionerà). Quindi da quando sto usando il plugin jQuery.address per ottenere il mio hashbang (#!) Sono andato sul loro sito web e ho scaricato i loro file di esempio per vedere quali erano le differenze tra i miei e i miei e ho capito che probabilmente stavano usando una funzione php per creare le istantanee HTML necessarie: https://github.com/bartaz/jquery-address/blob/master/samples/crawling/index.php perché è per questo che, immagino, Facebook non può leggere la mia.
<?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');
}
?>
Quindi la mia ipotesi è che potrei forse usare una funzione php simile per servire le istantanee HTML invece di usare l'hack di WordPress ma avrei bisogno di adattarlo a WordPress. Il problema è che non sono un programmatore e finora ho fatto del mio meglio.
I miei post sono in questo formato: http://visualise.ca/#!/anne-au-cherry e la versione statica è disponibile su http://visualise.ca/anne-au-cherry (Where anne-au-cherry è la lumaca del post e cambia a seconda della pagina che stiamo visualizzando).
Quindi la mia domanda è: qualcuno potrebbe confermare che sono sulla buona strada e, se possibile, anche aiutare a creare quella funzione php?
Mille grazie per il tuo tempo e aiuto!