Просмотр полной версии : Как сделать такой архив?
Приветствую.
Прошу помощи у коллективного разума, ибо своего не хватает.
Есть задача сделать следующее:
1. Страница LATEST (mysitename/theme1/topic1). Отображаются N новостей. Новости типа "ссылка на страницу".
2. После всего идёт такая конструкция:
Год
Янв Фев Мар ... Дек
Год
Янв Фев Мар ... Дек
и так далее..
При нажатии на название месяца (хорошо бы выводить количество новостей в виде всплывающего окна) попадаем на страницу mysitename/theme1/topic1/year/month,
где выводятся все новости за месяц (тот же LATEST, но малость подкрученный). На этой странице присутствует та же конструкция для архива.
Ума не приложу как это реализуется и что для этого надо. 1-й пункт уже есть.
Что делать? Нужны ещё какие-то отдельные страницы? Если да, то сколько? Или всё делается TS на этой же страницы путём замены содержимого?
Вот пример кода страницы:
[globalVar = TSFE:id = 43]
lib.newsholder = COA
lib.newsholder {
10 < plugin.tt_news
10 {
templateFile = fileadmin/templates/tt_news2.html
pid_list = 43
}
}
[global]
Смотрите в эту сторону (http://typo3.org/documentation/document-library/extension-manuals/tt_news/2.5.2/view/1/3/#id3833453)
Смотрите в эту сторону (http://typo3.org/documentation/document-library/extension-manuals/tt_news/2.5.2/view/1/3/#id3833453)
Спасибо, конечно, за указание стороны, но эту делу не помогает. Я знаю в какую сторону смотреть, но не понимаю как это реализовать в моём случае. Как вставить... эээ.. AMENU... после новостей?
20 < plugin.tt_news { code = AMENU }
?
Ибо я не хочу отдельной страницы с календарём.
А как прикрутить собственно архив?
структура такая:
тема 1
--подтема 1.1.
---Новость 1.1.1
---Новость 1.1.2
---Новость 1.1.3
Сейчас новости выводятся на странице "подтема 1.1". Архив будет на какой-то другой, я так понимаю? И что делать с RealURL в таком случае?
dmartynenko
11.12.2008, 15:40
Если вы вставите AMENU после списка новостей, то вы и получите селекторы по годам и месяцам.
Эти селекторы будут ссылками на эту же страницу но с доп. параметрами, при переходе по которым содержимое списка LIST (возможно его придется использовать вместо LATEST) будет отфильтровано по этим датам. Такое поведение заложено в tt_news.
Поэтому никаких доп. страниц не нужно создавать.
Вот настройки RealURL нужно посмотреть, что бы эти доп. параметры в ссылках переводились в нужные вам /year/month
Если вы вставите AMENU после списка новостей, то вы и получите селекторы по годам и месяцам.
[globalVar = TSFE:id = 43]
lib.newsholder = COA
lib.newsholder {
10 < plugin.tt_news
10 {
templateFile = fileadmin/templates/tt_news2.html
pid_list = 43
}
[global]
Что к этому прибавить? Пытаюсь вставить ещё одну запись с code = AMENU - игнорирует...
dmartynenko
11.12.2008, 17:20
Ваш код в студию!
Кроме этого в вашем коде нет закрывающей скобки }, возможно это сказывается на работоспособности этого кода.
Я бы сделал примерно так:
[globalVar = TSFE:id = 43]
lib.newsholder = COA
lib.newsholder {
10 < plugin.tt_news
10 {
code = LIST
templateFile = fileadmin/templates/tt_news2.html
pid_list = 43
... // настройка плагина
}
20 < plugin.tt_news
20 {
code = AMENU
templateFile = fileadmin/templates/tt_news2.html
pid_list = 43
... // настройка плагина
}
}
[global]
[globalVar = TSFE:id = 43]
lib.newsholder = COA
lib.newsholder {
10 < plugin.tt_news
10 {
code = LATEST
templateFile = fileadmin/templates/tt_news2.html
pid_list = 43
}
lib.newsholder2 = COA
lib.newsholder2 {
10 < plugin.tt_news
10 {
code = AMENU
templateFile = fileadmin/templates/tt_news2.html
pid_list = 43
}
}
[global]
Выводит только первый блок (LATEST). Я даже нарочно разделил по разным объектам, потому что в мануале было написано, что возможен конфликт.
Я что-то ещё где-то забыл описать, прописать?
[/CODE]
dmartynenko
11.12.2008, 17:37
Опять забыли закрывающую скобку для блока lib.newsholder !!!
А в файле шаблона есть кусок шаблона для вывода AMENU ?
Тут кажется ошибся, скорее настройка вывода идет без шаблона через TS.
Да, со скобкой я промахнулся, но дело не в скобке, а в том, что он выводит два LATEST, то есть code для него как бы не работает.
dmartynenko
12.12.2008, 14:59
Звучит как из разряда фантастики :)
Скорее все же ошибка где-то в вашем коде.
Попробуйте "метод тыка" - поставте второй раз код SEARCH или CATMENU и посмотрите что будет.
И сделайте так - надежней:
lib.newsholder {
10 < plugin.tt_news
...
20 < plugin.tt_news
...
}
Звучит как из разряда фантастики :)
Скорее все же ошибка где-то в вашем коде.
Попробуйте "метод тыка" - поставте второй раз код SEARCH или CATMENU и посмотрите что будет.
И сделайте так - надежней:
lib.newsholder {
10 < plugin.tt_news
...
20 < plugin.tt_news
...
}
Сделал и так и так. Сэймшит. Выводит три блока LATEST. Я вот что еще могу сказать, когда я убрал defaultCode = LATEST, то он ругался, что не задан тип вывода и так же не реагировал на вставленные коды.
Работает на vBulletin® версия 3.8.1. Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot