Сортировка контента относительно текущей даты

#1 13 сентября 2018 в 23:22
Здравствуйте все, возник такой вопрос.
Есть тип контента "Соревнования" с полем "дата проведения"
Можно ли в списке отсортировать контент не по дате добавления, а по полю "дата проведения соревнования" относительно текущей даты.
По сути, нужно сделать так как на фото ниже.
Заранее спасибо за советы=)
Иллюстрация
Прикрепленный файл
2_koo8k.jpg 470 Кб
#2 13 сентября 2018 в 23:29
Панель управления — Типы контента — Соревнования — Наборы.
Создать набор с сортировкой по нужному полю и поставить его первым.
#3 13 сентября 2018 в 23:35


Панель управления — Типы контента — Соревнования — Наборы.
Создать набор с сортировкой по нужному полю и поставить его первым.

Ris

Соревнования могут быть добавлены на год вперед, а выводить нужно те, которые в этом месяце
#4 14 сентября 2018 в 09:27

Соревнования могут быть добавлены на год вперед, а выводить нужно те, которые в этом месяце

@boom
Там в настройках наборов еще и фильтры есть.
Можно сделать фильтры по дате проведения.
#5 14 сентября 2018 в 11:53

Там в настройках наборов еще и фильтры есть.
Можно сделать фильтры по дате проведения.

Ris

Спасибо, стало более менее ясно. Но остаётся такой вопрос,
Создаю наборы 2017,2018,2019 и т.д., а так же наборы с месяцами: январь февраль и т.д.
Как объединить наборы месяцов и годов?
К примеру выбираю набор 2018 и набор август, выводятся все соревнования за август 2018 года, меняю год на 2019 выводятся за август 2019.
Не уверен доступно ли объясняю, по ссылке пример: sambo.ru/events/
#6 14 сентября 2018 в 12:37
@boom,
Теперь понял.
Нет на наборах такое не сделать.
Но можно создать категории 2016, 2017, 2018, а в них подкатегории январь2017, февраль2017 и т.д.
#7 14 сентября 2018 в 16:49


@boom,
Теперь понял.
Нет на наборах такое не сделать.
Но можно создать категории 2016, 2017, 2018, а в них подкатегории январь2017, февраль2017 и т.д.

Ris
Категории не вариант, информация о дате проведения должна браться из поля "дата проведения"
Я только начал разбираться в instant cms, может как нибудь по другому можно организовать вывод контента как по ссылке выше?
#8 14 сентября 2018 в 17:00
@boom, только хуком. В content_list_filter или лучше в content_(ваш_тип_контента)_list_filter можно добавить фильтрацию данных исходя из текущей даты.
#9 14 сентября 2018 в 19:06


@boom, только хуком. В content_list_filter или лучше в content_(ваш_тип_контента)_list_filter можно добавить фильтрацию данных исходя из текущей даты.

Loadырь

Почитал про хуки, не много не понял какие данные нужно фильтровать, можете подсказать направление для поисков?
И ещё, как тогда сделать ссылки на года и месяца как по ссылке выше.
#10 14 сентября 2018 в 19:12

можно добавить фильтрацию данных исходя из текущей даты.

Loadырь
Товарищу не текущая дата нужна, а кнопки со ссылками на странице, которые открывают контент, отфильтрованный по году и месяцу.
Да, можно сделать хук, который, исходя из request_uri будет фильтровать контент на странице. То есть отправка методом GET через url типа site.ru/content.html?2018/yanuary
Ну и доработка шаблона вывода контента, чтобы все эти кнопки вывести.
#11 14 сентября 2018 в 19:38

Товарищу не текущая дата нужна

Ris
Да, действительно, когда тема появилась, мне почему-то показалось, что нужно выводить только сегодняшние и будущие события. Но в этом случае всё гораздо сложнее.
Можно как посоветовал Ris, через гет параметры, но тогда придётся "подзабить" на сео этих страниц. А если нужны страницы типа как на примере, то тут два варианта, либо делать хак файла router у типа контента, с добавлением в него своих страниц, либо делать отдельный компонент для этих евентов, возможно даже и с привязкой к какому-нибудь типу контента. Копать надо примерно в эту сторону. В любом случае, в админке галочками и селекторами это не решить.
#12 14 сентября 2018 в 20:23

В любом случае, в админке галочками и селекторами это не решить.

Loadырь
Я и подумать о таком не мог=)

либо делать отдельный компонент для этих евентов, возможно даже и с привязкой к какому-нибудь типу контента

Loadырь
Можете рассказать подробнее, как это работает? Я про привязку компонента к типу контента. У меня большое число соревнований уже добавлены и не хотелось бы, добавлять их заново в новый компонент. Думаю хак файла router не очень хорошая идея, или не так?

P.S. где находится файл router? =)
#14 14 сентября 2018 в 23:24

В InstantMaps сделано так

Loadырь
создал компонент c именем event, как у типа контента. Добавил этот код, вроде всё заработало, но не знаю как действовать дальше, крайне мало информации и документации
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.