我一直在构建一个无需重新加载(使用 PHP 和 AJAX)的基于 jquery 导航的站点,并且最近遇到了页面“后退”、“前进”和“重新加载”功能以及 SEO 友好性的问题。
--跳过这部分直接进入问题--
my site目前(不使用 AJAX,但)加载一个 index.php,它有几个“内容”div,其中一个是可见的(class="active"),而其他的则不显示。当用户单击导航链接时,一个漂亮的动画会在内容 div 之间切换。
我重写了 apache 来映射类似的东西
http://mysite.com/about
到
http://mysite.com/index.php?page=about
其中“关于”部分是默认显示的部分(而其他“内容”div 是隐藏的)。基于此参数,我为页面添加了适当的元标记。我的站点地图有 mysite.com/about、mysite.com/blog,这样它们就可以作为单独的页面被编入索引。
但是,我最近决定让这个基于 ajax,因为我计划合并更多的内容,而且将所有内容加载到一个页面上是愚蠢的。
注意:我现在也在实现 Smarty 模板。
我决定实现散列标签,但看到了固有的 SEO 问题,然后我发现了 hashbangs(wth?!),然后发现了带有 history.pushState() 和 的新 HTML5 内容History.js 并决定使用它。
那么主要问题来了
如果我只有一个页面使用 ajax 在内容 div 中加载页面模板,使用 history.pushState() 修改 URL 并使用 mod_rewrite 和一个 PHP 后端,它可以在以下情况下提供默认内容模板像“mysite.com/about”这样的直接请求(mysite.com/index.php?page=about)(用于基本可用性和 SEO),我也不能为直接请求设置元内容,除非我有两个模板 - 一个内容模板 -和元模板?还有其他解决方法吗?
是像<title>这样的标签和 <meta name="description">重要到足以保证有一个特别适合他们的模板?
总而言之,我希望我漂亮的 mod_rewrite URLS 能够在 google 上显示特定加载 ajax 的页面内容模板的正确标题和元描述。
编辑
我正在做与他们在 hypem.com 上进行的几乎相同的事情.他们有一个事件监听器可以更改 <title>列出新内容时标记。他们还提供正确的 <meta name="description">标签,但前提是它是对主要页面之一的直接请求,例如博客 - 其他页面,例如 http://hypem.com/blog/indie+today/10332 , 返回主要博客页面的元标记,并且仅在直接请求时返回
最佳答案
我会首先构建站点以使用所有直接链接而不使用 ajax,然后添加 ajax。但是,如果浏览器正在请求页面,则只包含添加 ajax/历史功能的代码。如果网络爬虫访问您的站点,请不要包含 ajax/历史记录功能。
关于php - history.pushState 导航 - 元标签怎么样 - 单独的模板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7261373/
我试图使用yard记录一些Ruby代码,尽管我所做的正是所描述的here或here#@param[Integer]thenumberoftrials(>=0)#@param[Float]successprobabilityineachtrialdefinitialize(n,p)#initialize...end虽然我仍然得到这个奇怪的错误@paramtaghasunknownparametername:the@paramtaghasunknownparametername:success然后生成的html看起来很奇怪。我称yard为:$yarddoc-mmarkdown我做错了什么?
我有一个div,它根据表单是否正确提交而改变。我想知道是否可以检查类的特定元素?开始元素看起来像这样。如果输入不正确,添加错误类。 最佳答案 试试这个:browser.div(:id=>"myerrortest").class_name更多信息:http://watir.github.com/watir-webdriver/doc/Watir/HTMLElement.html#class_name-instance_method另一种选择是只查看具有您期望的类的div是否存在browser.div((:id=>"myerrortes
我的Gallery模型中有以下查询:media_items.includes(:photo,:video).rank(:position_in_gallery)我的图库模型有_许多媒体项,每个都有一个照片或视频关联。到目前为止,一切正常。它返回所有media_items包括它们的photo或video关联,由media_item的position_in_gallery属性排序。但是我现在需要将此查询返回的照片限制为仅具有is_processing属性的照片,即nil。是否可以进行相同的查询,但条件是返回的照片等同于:.where(photo:'photo.is_processingIS
我想查找字符串的结尾是否与单独字符串的开头重叠。例如,如果我有这两个字符串:string_1='Peoplesaynothingisimpossible,butI'string_2='butIdonothingeveryday.'如何找到string_1末尾的“butI”部分与string_2开头相同?我可以编写一个方法来遍历这两个字符串,但我希望得到一个包含我错过的Ruby字符串方法或Ruby习惯用法的答案。 最佳答案 将MARKER设置为一些从未出现在您的string_1和string_2中的字符串。有一些方法可以动态地做到这一
我有这样的HTML代码:Label1Value1Label2Value2...我的代码不起作用。doc.css("first").eachdo|item|label=item.css("dt")value=item.css("dd")end显示所有首先标记,然后标记标签,我需要“标签:值” 最佳答案 首先,您的HTML应该有和中的元素:Label1Value1Label2Value2...但这不会改变您解析它的方式。你想找到s并遍历它们,然后在每个你可以使用next_element得到;像这样:doc=Nokogiri::HTML(
我有以下不起作用的代码:=form_for(resource,:as=>resource_name,:url=>session_path(resource_name),:html=>{:class=>"well"})do|f|=f.label:email=f.email_field:email=f.label:password=f.password_field:password-ifdevise_mapping.rememberable?%p=f.label:remember_me,:class=>"checkbox"=f.check_box:remember_me,:class=>"
我正在遍历数组中的一组标签名称,我想使用构建器打印每个标签名称,而不是求助于“我认为:builder=Nokogiri::XML::Builder.newdo|xml|fortagintagsxml.tag!tag,somevalendend会这样做,但它只是创建名称为“tag”的标签,并将标签变量作为元素的文本值。有人可以帮忙吗?这个看起来应该比较简单,我刚刚在搜索引擎上找不到答案。我可能没有以正确的方式提问。 最佳答案 尝试以下操作。如果我没记错的话,我添加了一个根节点,因为Nokogiri需要一个。builder=Nokogi
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我来自C、php和bash背景,很容易学习,因为它们都有相同的C结构,我可以将其与我已经知道的联系起来。然后2年前我学了Python并且学得很好,Python对我来说比Ruby更容易学。然后从去年开始,我一直在尝试学习Ruby,然后是Rails,我承认,直到现在我还是学不会,讽刺的是那些打着简单易学的烙印,但是对于我这样一个老练的程序员来说,我只是无法将它
我有一个偏爱:如何将像o.office这样的值插入到属性中?value="#{o.office}"无效。 最佳答案 'type='text'/>或者你可以使用表单助手 关于ruby-on-rails-如何将变量值插入ERB模板中的HTML标签?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/6172174/
是否可以从Ruby中的HTMLblock中提取IMG标签(或只是IMG标签的src属性)?例如,如果我有一个HTMLblock,例如:Loremipsumdolorsitamet,laboreetdoloremagnaaliqua.Duisauteiruredolorinreprehenderitinvoluptatevelitessecillumdoloreeufugiatnullapariatur.我可以通过正则表达式或其他方法只提取IMG标签或该IMG标签的src吗?提前感谢您的任何建议! 最佳答案 使用Nokogiri:re