Компонент представляет из себя набор полей для продвижения записей в списках типов контента. На сегодняшний день всё почти готово, однако хотелось бы узнать, насколько это нужно кому-либо, чтобы скорректировать сроки релиза.
Сейчас так:
- Поле «UpJump — продвижение». Указывается цена за один день для каждой группы пользователей. Если пользователь в нескольких группах — будет применена наименьшая цена. Если админ — всегда бесплатно. Можно добавить и оплатить нужное количество дней при добавлении или редактировании записи или в любой момент потом. Поле само по себе не выводится ни в записях ни в списках, однако содержит в себе количество дней. Что с этим делать дальше, расскажу ниже.
- Поле «UpJump — основа». Его нельзя изменить при добавлении записей, но оно выводит в списках и записях все поля типа «UpJump — продвижение», созданные в типе контента, и их значения. Конечно, только те. А также кнопку «Продвижение». При нажатии на кнопку выводится форма со всеми полями, где показано, сколько дней осталось, и поля для добавления дней.
Что с этим делать
Например, если это поле «UpJump — продвижение» и оно имеет имя is_vip, то в зависимости от шаблона (в дефолтном это было, в модерне вроде нет, но добавить не сложно), если на счету есть дни, запись будет выделена цветом.
Если это поле предназначено для поднятия в списке, то в наборах сортируем по нему. Выше та запись, у которой больше дней на счету.
Также можно создать набор, добавив в него фильтр по этим полям, чтобы выводить в виджетах списков контента.
Задание в планировщике списывает один день раз в сутки. Таким образом, когда дни закончатся, поле станет пустым. Ну и, соответственно, запись перестанет выделяться цветом и выводиться вверху.
Можно добавлять любое число полей типа «UpJump — продвижение», каждое для своей задачи.
Админка
В админке два раздела — ТОП и История. В истории показываются все операции, в ТОПе только те, которые имеют дни на счету.
Компонент связан с биллингом, дни покупаются за баллы биллинга. Всё работает на аяксе. Если юзеру не хватает средств, он получит ссылку на пополнение. После пополнения будет ссылка «Обновить». И если всё нормально, то он сможет продолжать.
Компонент будет условно бесплатным. Т.е., его можно будет свободно скачивать, но только для пользователей определенной группы на моем сайте. Попасть в эту группу можно разными способами, один из которых — подписка на тариф. Но это всё потом расскажу.
Пишу для своего сайта. Рано или поздно компонент обязательно будет опубликован. От результатов опроса зависит, как скоро.
Всех с Новым годом!))