如何更改链接到更多SEO友好的铁路

时间:2013-08-29 08:03:20

标签: ruby-on-rails routing seo

我在我的应用中有这样的链接

http://localhost:3000/lv/manufacturer_products?manufacturer=Komptech

http://localhost:3000/en/products?category=Shredders

但我的朋友说这些链接不是SEO友好的,我必须改变它们,

http://localhost:3000/en/manufacturer_products/Komptech

或类似于此

http://localhost:3000/en/products/category/Shredders

但是如何在没有帮助关闭任何宝石的情况下实际更改链接结构?使用路线?

感谢名单

3 个答案:

答案 0 :(得分:1)

Ryan Bates有一个关于此的轨道广播,我总是遵循这个,

http://railscasts.com/episodes/314-pretty-urls-with-friendlyid

答案 1 :(得分:1)

请参阅SO {。

上的namespacesthis answer的文档

你甚至可以做命名路线。像这样的东西:

resources :products do
  resources :manufacturers
end

对于manufacturers的索引操作,将返回此:

product_manufacturers GET    /products/:product_id/manufacturers(.:format)          manufacturers#index
然后你可以写一下routes.rb

match '/:id/products/:name', 
     :to => 'manufacturers#index', :as => :manufacturers   

当你打电话时

<%= link_to @manufacturer.name, manufacturers_path({id: @manufacturer.product_id, name: @manufacturer.name}) %>

将呈现http://localhost:3000/x/products/Komptech

答案 2 :(得分:0)

我不能限制我分享这个...一旦我得到了极好的帮助来优化我的网站的搜索引擎优化

查看链接

http://complitech.net/seo-basics-high-benifit-for-ruby-on-rails-developer/

看第3点得到你的答案

3)改进您的网址结构

通常以旧的方式,网址是非结构化的,而不是目录明智的,因此请使您的网址结构化。

示例:

www.herrybaseballcards.com/images/baseball/top-ten-baseballcards.html

所以在路线

match '/:foldername/:products/:name', :to => 'products#index', :as => :products

所以忽略基于查询的URL结构