0

家のリスト ページにフィルタリング (チェックボックス) を追加したいと考えています。ユーザビリティが良ければajaxでやろうと思っていたのですが、SEO的にはURL構造がSEOに強いことも重要です。

例:

  • テーマのチェックボックスは「近海」です。URL は domain.com/houses/neartheea です。
  • テーマのチェックボックスは「idealfortwo」です。URLはdomain.com/houses/idealfortwoです
  • amenity チェックボックスは「wifi」です URL は domain.com/houses/idealfortwo/wifi でなければなりません

これを設定するためのアイデア、リンク、投稿などがありますか?

4

1 に答える 1

0

残念ながら、これを行う実際の方法はありません。つまり、未定義の数のパス コンポーネントでルートを定義します。最大数を選択して、次のように一連のルートを定義できます。

get '/houses/:f1' => 'houses#index'
get '/houses/:f1/:f2' =>'houses#index'
...
get '/houses/:f1/:f2/:f3/:f4/:f5/:f6' =>'houses#index'  

しかし、それは手っ取り早いので、次のような URL スキームを使用することをお勧めします。

get '/houses' => 'houses#index'

次に、URL は次のようになります。

/houses?filter=goodschool,bbq,northeast

次に、インデックスアクションで:

def index
  if params[:filter]
     filters = params[:filter].split(",")
     filters.each do |f|
       # do something with each term in the filter, I have no idea
     end
     @houses = House.where(.....???)
  else
     @houses = House.all
  end
end

あなたが求めている SEO フレンドリーな URL は得られませんが、これがあなたの状況で SEO にどのように影響するかはわかりません.

于 2012-09-19T15:47:14.147 に答える