我一直在网上寻找答案,但从来没有得到任何确切的答案。
我有一个 index.php 页面,其中包含两个特别 DIV :#post-title 和#post-content ,其内容是通过jQuery函数加载的。每次单击链接时都会调用此函数
<a onclick="showPage('page')"></a>
功能:
function showPage(page, fadeInSpeed, fadeOutSpeed) {
fadeInSpeed = typeof fadeInSpeed !== 'undefined' ? fadeInSpeed : 500;
fadeOutSpeed = typeof fadeOutSpeed !== 'undefined' ? fadeOutSpeed : 200;
pageUpper = page.charAt(0).toUpperCase() + page.slice(1);
var History = window.History;
History.pushState(null,pageUpper, "index.php?page=" +page);
$("#post-title").fadeOut(fadeOutSpeed, function() { // Callback del fadeOut..
$("#post-title").html(page);
Cufon.refresh(); // I reload Cufon plugin on the div
}).fadeIn(fadeInSpeed);
$("#post-content").fadeOut(fadeOutSpeed, function() {
$("#post-content").load(page + ".php");
}).fadeIn(fadeInSpeed);
}
这是函数,包含History.pushState。现在,当我直接访问一个URL,例如:?page = curriculum 时,我在index.php文件中添加了以下代码来调用上述函数:
<?php
if(isset($_GET['page'])) { // Controlla l'URL e restituisce la pagina corretta.
?>
<script>
$(function() {
showPage('<? echo htmlentities($_GET['page']); ?>', 1000, 1);
});
</script>
<?
}
?>
一切都很无趣但现在我有一个小问题:这是否会对抗SEO? Google抓取工具会正确索引我的网站吗?如果没有,我该怎么做才能解决这个问题?
我提前感谢你们,圣诞节也是如此:)
答案 0 :(得分:0)
如果您希望站点可以编制索引,则必须确保禁用JavaScript时所有页面内容都可见。例如,在禁用JavaScript的情况下调用page=curriculum
应该显示课程数据。由于内容似乎是通过XMLHttpRequest
检索的,因此无法使用。因此,您必须按照here所述实施Google抓取方案。
请注意,如果网站中没有显示您的网址(例如,如果您始终使用sitemap.xml
功能显示内容),则必须更新您的showPage()
文件以声明您的网址。
答案 1 :(得分:-1)
根据您的问题,我们仍然不了解,您是否可以描述您的域名,它可以分析您的实际问题,即使只有index.php有问题,那么您可以通过.htaccess文件重新编写您的URL 我们举个例子,
RewriteEngine On
RewriteCond %{HTTP_HOST} !^example\.com
RewriteRule (.*) http://www.example.com/$1 [R=301,L]
RewriteRule ^([^/\.]+)/$ http:// %{HTTP_HOST}/$1 [R=301,L]
RewriteRule ^([^/\.]+)$ index.php?rewrite=$1 [L]
或
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ index\.php\ HTTP
RewriteRule ^index\.php$ http:/ /www.example.com/ [R=301,L]
为no-www重写URL并删除index.php
的两个示例