2017-02-08 16 views
0

Magentoを使用して現在稼働中のRailsサイトを再構築/再設計しています。 SEOランキングを下げないためには、URIを同じにしています。現在のサイトにサブディレクトリがないため、私は最適化の問題に直面しています。これは、製品がサイトのルートディレクトリの下にあり、レビューがサイトのルートディレクトリの下にあり、他のすべてのコンテンツページがサイトのルートディレクトリの下にあると言います。 例えば製品がRuby On Rails Overlapping Routes

www.example.com/some-product-name 

であるかもしれないと審査は明らかにルートを使用し、私の最初の推測では、このようになりますルート作ることだった

www.example.com/some-review-name 

レールで次のようになります。

get '/:uri_identifier', to: 'pages#find_page' 

これはうまくいきますが、照会する50kの製品と別の200種類のコンテンツページと一緒に5kのレビューを行うと、このコントローラm ethodは、どちらかの文は、クエリ、大量のを避けるためにあればそうでそれらをフィルタリングすることは実際にはない、それはURI年代は、フォームのいずれかの種類を持っていない

params[:uri_identifier] 

に基づいて描画する必要のあるページはすべて把握するのキャッチになり実現可能である。私の考えは、レビューのために、特定のルートを作成し、ルート

get '/:uri_identifier', to: 'pages#find_page'  

上routes.erbにそれらを追加することでしたが、私はまだこれをやってのけるためにルートをKB以下近い作成する必要がありますするつもりです。私はこれを試して、それは働いたが、私はリソースの最小量を使用することを確認するために、この問題に近づくための最善の方法は何かを本当に確信していない。

答えて

0

レールにこの種の問題を解決するためのパターンがいくつかあります。そのうちの1つはスラッグ制約です。大型レールルート

  1. http://blog.arkency.com/2014/01/short-urls-for-every-route-in-your-rails-app/
  2. http://code-worrier.com/blog/custom-slugs-in-rails/
  3. Refactoring a large routes.rb file in rails 4
をナメクジを使用してリファクタリングをコンセプトに、彼らが助け、このリソースを使用します