Просмотр полной версии : Есть ли возможность выводить главную новость дня в tt_news через SINGLE по умолчанию?
ov.lovyannikov
07.05.2009, 11:18
Вобщем где-то так как на http://korrespondent.net/ - главная новость дня :) .
Valery Romanchev
08.05.2009, 00:12
Вобщем где-то так как на http://korrespondent.net/ - главная новость дня :) .
без проблем
Делаете категонию "Новость дня" и выводите одну последнюю новость из этой категории в блоке LATEST.
Но если у вас будет 20000 новостей, то надо делать по другому (иначе будут проблемы с производительностью)
ov.lovyannikov
08.05.2009, 01:00
без проблем
Делаете категонию "Новость дня" и выводите одну последнюю новость из этой категории в блоке LATEST.
Но если у вас будет 20000 новостей, то надо делать по другому (иначе будут проблемы с производительностью)
На сколько мне известно LATEST - это список, в данном случае он будет отображать 1 новость в списке, а мне нужна единичная новость в полном отображении.
Valery Romanchev
08.05.2009, 01:12
это без разницы
LIST и LATEST настроить для вывода поля bodytext
У новостей есть шаблоны. Подставь в твой шаблон маркер ###NEWS_CONTENT### в list или latest.
Вопрос по теме, А как задать дефолтное ID новости в Single ?
Расположение следующее : Single (в колонке NORMAL) List ( в Right);
У меня контент в SINGLE пишет ID не определён, пока явно не тыкнешь в контенте LISTа на линк с новостью.:confused: А нужно чтоб сразу чтото отображал.
Насколько знаю, single не выводит новость, если id нет в GET. Да и для чего? Если нужно вывести одну новость, можно поставить 1 новость без пейджбраузера в list. Опять таки, можно менять шаблон.
Насколько знаю, single не выводит новость, если id нет в GET. Да и для чего? Если нужно вывести одну новость, можно поставить 1 новость без пейджбраузера в list. Опять таки, можно менять шаблон.
:) Ну вот, и я говорю, что както некрасиво получается. Дело в том, что идея была в колонке NORMAL сделать сингл, но который сразу же при вызове страницы на которой он расположен подгружает какуюнибудь новость в полный рост. а не пишет что беспомощен, невидит ID и прочее. Такое вообще возможно реализовать ? :):confused:
А для чего? и по какому принципу он должен показывать эту новость? Полный просмотр вполне можно реализовать через list. Не знаю, для чего так необходим single
single необходим потому, что latest, беря нужную новость сам, не воспринимает переданные из list параметры другой новости.
Пример: в меню есть пункт "news", где показана одна новость полностью, и - отдельно!!! в правой колонке - список новостей. При клике на новость в списке, должна отображаться эта новость. Казалось бы, ставим 2 плагина на странице: single и list. Это даже работает... Но!!! при первом входе в этот пункт меню - пока нет номера новости - single даёт ошибку. А должен бы показать какую-нибудь новость, хоть случайную, хоть например самую свежую...
Попытка поставить latest вместо single приводит к тому, что ссылки из list не работают!!! latest их игнорирует.
Обошёл эту засаду созданием скрытой подстраницы с single и list, полностью идентичной внешне, на которую и направляют ссылки со всех list. А на странице "news" остались подкорректированный latest и list. Но просто очень чесались руки вместо ковыряния подстраниц и шаблонов - ковырнуть PHP-код для single, чтобы он при отсутствии параметров брал просто самую свежую новость... жаль времени не было.
Может быть, я что-то проглядел? Есть ли более удобный способ инициализации страницы с одной новостью, если на неё попадаешь не только из списка или поиска, а напрямую из главного меню или sitemap?
cherkatel
20.08.2010, 14:49
ковырнуть PHP-код для single, чтобы он при отсутствии параметров брал просто самую свежую новость...
Делаете то же самое в TS. Проверяете наличие id. Если нет - выдете Latest, если есть - single используя параметр CODE.
А если все-таки надо выдавать новость, как Single?
В tt_news есть подключение imageMarkerFunc, которую можно переписать для другого отображения картинок новости или для добавления каких-то своих маркеров. Но эта imageMarkerFunc определена в tt_news только для Single. Поэтому, чтобы вывести новость так, как мне надо, со всеми дополнительными полями, мне надо ее вывести именно как Single. И Single-отображению передать номер последней новости из выбранной категории.
Как? Есть идеи?
dmartynenko
10.10.2012, 15:41
В TS есть возможность задавать значения piVars по умолчанию, например:
plugin.tt_news._DEFAULT_PI_VARS.tt_news = 905
Жаль только там нет никакого stdWrap - можно было бы найти последний uid и подсунуть.
Посмотрите еще экст rgnewsce (это дополнение к tt_news). На сколько я помню (ковырял его), он может при задании renderSingleInListLatest = 1 в режиме list/latest полностью рендерить новости как в single.
а как-то так:
tmp.10 = CONTENT
table = tt_news
select {
selectFields = tt_news.uid
join = tt_news_cat_mm ON (tt_news_cat_mm.uid_local = tt_news.uid)
where = tt_news_cat_mm.uid_foreign = 42
orderBy = datetime desc
max = 1
}
и как это потом подсунуть? (типа такого
plugin.tt_news._DEFAULT_PI_VARS.tt_news < tmp.10 )
- я пытаюсь вывести на страницу новость из определенной категории (42) как Single
зы: выглядит бредово как-то...
dmartynenko
10.10.2012, 16:21
Выглядит в стиле TypoScript :)
Только вот это не будет работать: plugin.tt_news._DEFAULT_PI_VARS.tt_news < tmp.10
Гляньте как используется _DEFAULT_PI_VARS в классе pibase
PS: Рекомендую взглянуть на rgnewsce, понравиться.
http://forum.typo3.biz/showthread.php?t=6614 было такое обсуждение
Работает на vBulletin® версия 3.8.1. Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot