То, что вы описываете, по сути является частичным, которое отображается на основе некоторого условия (то есть сегодняшняя дата между 'x' и 'y').
Я не знаю о жемчужине для этого, но это не должно быть слишком сложно построить.Просто создайте класс с именем Promotion
со следующими полями:
datetime start_date
datetime end_date
text html_code
string block_id
boolean active
string landing_page
. block_id
по сути является HTML-идентификатором, который используется для вставки содержимого этого Promotion
в <div>
с помощьюсоответствующий идентификаторЗатем, в макете вашего магазина, вы размещаете маркеры <div>
в местах, которые будут содержать рекламные вызовы.Поле active
можно использовать для включения / выключения повышения (игнорируя значения start_date
и end_date
).
Я думаю, это почти все, что вам нужно.
Чтобы ответить на ваш список потребностей:
- Установите значение по умолчанию в поле
html_code
на любое значение - Планирование выполняется с помощью полей
start_date
и end_date
- Вы имеете в виду поворот, как при jCarousel визуальном вращении контента?Вы можете легко добавить поддержку jCarousel самостоятельно.
- В своем коде просмотра вы можете автоматически добавить код Google Analytics, чтобы сделать это, и / или свой собственный код, чтобы отслеживать, сколько раз реклама показывается в ротации и какмного кликов он получает.Если бы вы сделали это нестандартным способом, вы просто добавили бы поле
views
для количества раз, когда было показано данное продвижение, и поле clicked
для того, когда оно было нажато.Вы можете рассчитывать количество кликов через контроллер Promotions
, который обрабатывает перенаправления на соответствующую целевую страницу на основе поля landing_page
. - См. i18n gem