2017-01-31 13 views
0

Для целей SEO я хотел бы иметь возможность использовать один и тот же шаблон HTML в моем файле paint#index для создания нескольких URL-адресов с различными атрибутами @seo_title.Rails - создание нескольких индексных страниц дома с теми же html, но разными переменными?

Например:

Моя страница индекса HTML (находится на приложение/просмотров/краска/index.html.erb):

<% @seo_title = "Red Paint Colors" %> 
<h1> PAINT COLORS </h1> 
<ul><% @paint_colors.each do |p| %> 
    <li><%= p.name %> - <%= p.color_family %></li> 
<% end %> 
</ul> 

И мой маршруты файл:

get "red-paint-colors", to => "paint#index" 

Это делает URL: ww.mysite.com/red-paint-colors

мой контроллер:

class PaintController < ApplicationController 
    def index 
    @paint_colors = Paints.all 
    end 
end 

Основные настройки, я знаю ... но я хотел бы, чтобы иметь возможность вводить кучу разных цветов краски для URL и @seo_title, так что я могу иметь URL с который читает: www.mysite .com/blue-paint-colors с @seo_title из "Blue Paint Colors".

Есть десятки цветов, есть ли способ, которым я могу просто составить список цветов и создать динамически созданную страницу для каждого цвета? Поэтому в основном я бы www.mysite.com/blue-paint-colors, www.mysite.com/yellow-paint-colors, www.mysite.com/green-paint-colors, и т.д.? ?

Заранее благодарен!

+0

Вы хотите отобразить динамический контент на динамической странице, например ww.mysite.com/green-paint-colors, затем автоматически создайте страницу с зелеными красками или отобразите только данные этой страницы. –

ответ

0

У меня еще не было возможности попробовать этот код, но я думаю, что это может быть полезно.

В файле routes.rb:

ARRAY_OF_COLORS.each do |color| 
    get "#{color}-paint-colors", to => "paint#index", color: color 
end 

В вашем PaintController:

def index 
    color = params[:color] 
    # Stuff here 
end 
0

я предпочел бы сделать это в show зрения, чем в index зрения. Затем вы можете использовать драгоценный камень friendly_id, чтобы настроить URL. Тогда :slug может быть комбинацией цвета со статической частью -paint-colors.

Что касается массовой загрузки цветов: я бы посмотрел на CSV Imports.

 Смежные вопросы

  • Нет связанных вопросов^_^