2013-09-26 23 views
6

AJAX tabanlı bir web sitesi SEO dostu yapmak için uğraşıyorum. BenNasıl yapılır? AJAX tarayıcıları için _escaped_fragment_ =?

$files = glob('./pages/*.php'); 

foreach ($files as &$file) { 
    $file = substr($file, 8, -4); 

} 

if (isset($_GET['site'])) { 
    if (in_array($_GET['site'], $files)) { 
     include ("./pages/".$_GET['site'].".php"); 
    } 
} 

: içerik varsayılan olarak AJAX ile yüklenen bir div, tarayıcılarının bir PHP komut dosyası içinde, <a href="#!site=contact" data-id="contact" class="navlink">контакт</a> ve: bağlantıları niteliklerini href web'de öğreticiler önerildiği gibi, ben ekledim "hoş" Başlangıçta _escaped_fragment_= parçasını (...)/index.php?_escaped_fragment_=site=about'dan kesmeye ihtiyaç duyduğumdan başka bir deyişle, betik GET URL'sinden site değerini alacaktır, doğru muyum?

Ancak, yine de, tarayıcının (#! numaralı #! numaralı) bağlantıların (?_escaped_fragment_= içeren) güzel bağlantılara dönüştürdüğünü nasıl bilebilirim? Otomatik olarak gerçekleştiği söylendi ve bu eşlemeyi sağlamanıza gerek yok, ancak Googlebot olarak Getir, URL'ye ne olduğuyla ilgili herhangi bir bilgi sağlamıyor.

cevap

14

Google bot, ?_escaped_fragment_= URL'lerini otomatik olarak sorgulayacaktır.

Yani www.example.com/index.php#!site=about den Google botu sorgular: Eğer "site" değerini elde etmek istiyorsanız PHP sitesinde www.example.com/index.php?_escaped_fragment_=site=about

Eğer $_GET['_escaped_fragment_'] = "site=about"

olarak alacak böyle bir şey yapmak gerekir :

if(isset($_GET['_escaped_fragment_'])){ 
    $escaped = explode("=", $_GET['_escaped_fragment_']); 
    if(isset($escaped[1]) && in_array($escaped[1], $files)){ 
      include ("./pages/".$escaped[1].".php"); 
    } 
} 

belgelerine bir göz atın:

https://developers.google.com/webmasters/ajax-crawling/docs/specification

+0

Ben bu şekilde çalışır ve sadece ben '= sitede' olmadan sürümüne Web sitemi yeniden bitirdikten cevap zaman zaman içinde korkuyordu;) neyse, uzakta şüphelerim üfleme için teşekkürler! –

+0

Web sayfanıza Eklentisini google botuna eklemek isterseniz, ajax sayfalarında tarama yapmak zorunda kalmadan – calmbird

+0

sitemizi bu formu iletişim formunu içeren her sayfada gösterebilirsiniz. ve formu Ajax kullanarak gönderiyorum. ne yapmalıyım . Nasıl kaldırılır #! ve? _escaped_fragment URL’den. Bu url sadece A1 site haritası üreteci aracını kullandığımda gelir. Bu SEO bakış açısından bir sorun mu, lütfen yardım –

İlgili konular