Задать вопрос

Как организовать архив новостей по дате?

Здравствуйте. Как сделать префикс с датой публикации перед ссылкой новости, как сделано на Ленте.ру?
2e0a767ac1cb4b35948ed716ed149efd.jpg
И можно ли сделать архив новостей наподобие Лентовской, с выбором даты и списком новостей по дате? Редакция Битрикс: Малый бизнес.
  • Вопрос задан
  • 497 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
babarun
@babarun Куратор тега 1С-Битрикс
Безумный план моих идей в руках больных людей
Вариантов масса:
  • Заводить соответствующие разделы (+ повесить обработчик на сохранение/обновление новости, что бы она привязывалась автоматически к нужному разделу и при необходимости он создавался сам)
  • Можно в символьный код новости, опять же обработчиком сохранять строку "/2017/05/22/moreluggage/"
    и использовать его для построения чпу
  • Ещё можно кастомизировать компонент bitrix:news, что бы комплексный компонент парсил url и подключал news:detail с нужной новостью
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Ifelseapps
@Ifelseapps
Frontend developer/JavaScript developer
Редакция тут особой роли не играет. На вскидку, приходит в голову такой вариант (самый простой):
Список новостей
1)Через urlrewrite отправляем все запросы вида /news/xxxx/xx/xx/ на файл /news/index.php
2)В urlrewrite парсим url и формируем 3 get-параметра (day, month, year)
3) В файле /news/index.php вызываем компонент news.list, перед компонентом формируем фильтр новостей по дате, название фильтра через FILTER_NAME передаем компоненту.

Детальная
1)Через urlrewrite отправляем все запросы вида /news/xxxx/xx/xx/xxxxxxxxx/ на файл /news/detail.php
2)В urlrewrite парсим url и формируем get-параметр, который будет содержать символьный код новости.
3)В файле /news/detail.php вызываем компонент news.detail и передаем в параметр ELEMENT_CODE символьный код новости.

Также можно кастомизировать комплексный компонент bitrix:news или написать свой.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы