【问题标题】:SEO/Rails - How to add the title tag to every "link_to"SEO/Rails - 如何将标题标签添加到每个“link_to”
【发布时间】:2010-09-23 20:48:30
【问题描述】:

我很惊讶 Rails 的创建者没有想到这一点,如果有人可以提供帮助,那就太好了。

我们怎样做才能改变这一点:

<%= link_to "My Title", :controller => "products" %>

自动到这个:

<%= link_to "My Title", :controller => "products", :title => "My Title" #basically a copy of the text %>

我认为这对 SEO 有很大帮助。

非常感谢!

亚历克斯

【问题讨论】:

  • 这对 SEO 毫无帮助——完全是多余的。它会在各处添加丑陋的工具提示,并向屏幕阅读器用户重复大量信息。当您需要提供无法包含在链接文本中或不够重要的附加信息时,请使用标题属性。
  • 我很惊讶你想这样做,链接文本还不够吗...?
  • 大卫的回答很有道理,但我以前有过经验。重复文本比将标题标签留空要好。而且我没有时间为我的所有链接指定“附加信息”。感谢你们俩的关注。
  • 没有标题标签?这与标题属性有什么关系...? “我以前有过经历”是什么意思? o_O

标签: ruby-on-rails seo link-to


【解决方案1】:

这是轨道 3 路:

<%= link_to object_path, title: "Path Title" %>

延伸阅读:https://www.searchenginejournal.com/how-to-use-link-title-attribute-correctly/

【讨论】:

    【解决方案2】:

    您的问题是有效的,我不知道您为什么被否决,但是,rails 的创建者确实考虑过这一点。实际上,您可以通过一种非常简单的方式来完成它,而不是使用自定义方法来复杂化:

    <%= link_to "Link", { :action => "show" }, { :title => "Title" } %>
    

    事实上,你可以添加任何你喜欢的参数,而不仅仅是标题。

    希望这会有所帮助!

    【讨论】:

      【解决方案3】:

      试试类似的方法

      def link_to_with_autotitle(title, args = {})
        link_to_without_autotitle(title, args.merge(:title => title))
      end
      alias_method_chain :link_to, :autotitle
      

      尚未测试代码,也不记得确切的 link_to 规范,但我想你明白了

      【讨论】:

      • 不会 args.merge(:title => title) 实际上覆盖 args 中的标题,以防指定一个? { :title => title }.merge(args) 应该是对的。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-21
      • 1970-01-01
      • 2017-09-05
      • 1970-01-01
      • 2014-01-15
      相关资源
      最近更新 更多