Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community |
16.02.2008, 19:18 | #1 | |
Senior Member
|
Просто меню из категорий новостей (tt_news)
Стоит задача с помощью TypoScript-а вывести простое меню из категорий (первого уровня) новостей (tt_news) в таком виде:
Категория 1 | Категория 2 | Категория 3 | Категория 4 | Категория 5 Перед тем как обращаться сюда, я это спросил у google и поискал на forum.typo3.biz, но к сожалению так и ничего вразумительного, простого и понятного не нашел. Попробовал сам, что ни будь сотворить, но тоже пока ничего не выходит. Первое, что я сделал, воспользовался примером из документации и написал Код:
lib.Categories_News = CONTENT lib.Categories_News { table = tt_news_cat select { # the category folder(s) pidInList = 22 } renderObj = COA renderObj.wrap = <div class="news-archive-item">|</div> renderObj { 10 = TEXT 10.field = uid 10.dataWrap = <a href=index.php?id={TSFE:id}&tx_ttnews[cat]= | > 10.insertData = 1 20 = TEXT 20 { field = title wrap = <strong>|</strong> if { value.field = uid equals.data = GPvar:tx_ttnews|cat } } 21 = TEXT 21 { field = title wrap = | if { value.field = uid equals.data = GPvar:tx_ttnews|cat negate = 1 } } 30 = TEXT 30.value = </a><br /> } } Цитата:
Добавляю Код:
select { pidInList = 22 andWhere = parent_category = 0 } Потом дописываю в "renderObj" Код:
renderObj { stdWrap.typolink.parameter = 23 stdWrap.typolink.additionalParams.dataWrap = tx_ttnews[cat]={field:uid} } В данный момент результат такой Код:
lib.Categories_News = CONTENT lib.Categories_News.wrap = <div class="menu_theme">|</div> lib.Categories_News { table = tt_news_cat select { pidInList = 22 andWhere = parent_category = 0 } renderObj = COA renderObj { stdWrap.typolink.parameter = 23 stdWrap.typolink.ATagParams = class="main_theme_item" stdWrap.typolink.useCacheHash = 1 stdWrap.typolink.additionalParams.dataWrap = &tx_ttnews[cat]={field:uid} stdWrap.typolink.wrap = | 10 = TEXT 10 { field = title wrap = <strong>|</strong> if { value.field = uid equals.data = GPvar:tx_ttnews|cat } } 20 = TEXT 20 { field = title wrap = | if { value.field = uid equals.data = GPvar:tx_ttnews|cat negate = 1 } } } } Категория 1Категория 2Категория 3Категория 4Категория 5 ..., без разделителя " | "... почему-то это Код:
[....].wrap = | | |*| | | |*| | |*| И остается проблема со ссылкой, что-то в ней не так, если посмотреть на ссылку http://test.typo3.site/index.php?id=list_news&tx_ttnews[cat]=1&cHash=f246abf5b1, как будто все правильно, но кода, я на нее клацаю попадаю на страницу /index.php?id=list_news со списком новостей, а их там нет "no news in this list", хотя знаю точно, что они там есть. Возможно, что проблема в том, что у категории есть подкатегории? Тогда еще стоит вопрос, как сделать чтобы, клацая на какой ни будь из категорий, выводился список новостей этой категории, и ее подкатегорий (это второй вопрос). Как все это реализовать? Последний раз редактировалось thebat; 17.02.2008 в 13:40 |
|
16.02.2008, 19:25 | #2 |
Senior Member
|
Это должны быть ссылки? Если нет, то (возможно) проще всего использовать CONTENT. Типа
Код:
lib.ttncat = CONTENT lib.ttncat{ select{ uidInList = 1,2,3,4,5 } table = tt_news_cat renderObj = TEXT renderObj.field = title wrap = | &entity_of_pipe; }
__________________
TYPO3 FAQ |
16.02.2008, 19:28 | #3 | |
Senior Member
|
Алексей, спасибо за быстрый ответ.
Да это должны быть ссылки... Меню практически уже готово. Остается решить две проблемы. Первое это внедрение в меню этой конструкции Код:
[...] stdWrap.typolink.wrap = | | |*| | | |*| | |*| [...] Второе: Как сделать чтобы, клацая на какую ни будь из категорий, выводился список новостей этой категории, и всех ее подкатегорий? К примеру, в "Категории 1" (первый уровень) есть под категории (второй уровень)… Цитата:
Последний раз редактировалось thebat; 17.02.2008 в 14:05 |
|
28.02.2008, 14:54 | #4 |
Senior Member
|
Может у кого-то есть предложения на этот счет
Как внедрить в меню (TypoScript меню, смотрите выше) категорий эту конструкцию
Код:
[...] stdWrap.typolink.wrap = | | |*| | | |*| | |*| [...] И вообще, почему этот optionSplit не работает здесь? Код:
[...] [...].wrap = | | |*| | | |*| | |*| [...] |
28.02.2008, 14:59 | #6 |
Senior Member
|
Спасибо, я так и делаю ... [ & # 1 2 4 ; ] просто здесь на странице это & # 1 2 4 ; aвтоматически генерирует " | " У меня это " | " нормально выводится, только " | " в конце мне не нужен ... В TMENU это
Код:
[...] [...].allWrap = | | |*| | | |*| | |*| [...] |
17.03.2008, 01:35 | #7 |
Senior Member
|
Не красиво, но все-таки решил это
Сперва выводим категории 1,2,3,4,5
Код:
{ table = tt_news_cat select { pidInList = 22 where = uid IN (1,2,3,4,5) andWhere.append = TEXT andWhere.append.value = {GPvar:tx_ttnews|cat} andWhere.insertData = 1 andWhere.append.intval = 1 andWhere.append.ifEmpty = 1 } renderObj = COA renderObj {[....].wrap = | | [....]} } Код:
{ table = tt_news_cat select { pidInList = 22 where = uid IN (6) andWhere.append = TEXT andWhere.append.value = {GPvar:tx_ttnews|cat} andWhere.insertData = 1 andWhere.append.intval = 1 andWhere.append.ifEmpty = 1 } renderObj = COA renderObj {[....].wrap = | [....]} } Код:
Category = COA Category { 10 < [1,2,3,4,5] 20 < [6] } Последний раз редактировалось thebat; 17.03.2008 в 11:58 |
27.03.2008, 23:26 | #8 |
Новенький
Регистрация: 19.03.2008
Сообщений: 11
|
thebat у меня такая же проблема с ссылкой. при клике по категории, пишет на странице no news in this list. если есть решение, поделитесь пожалуйста.
|
03.04.2008, 13:12 | #9 |
Senior Member
|
Будьте внимательны!
"_Michael", прочтите внимательно эту тему, здесь есть решение вашей проблемы.
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вывод списка определенных категорий новостей в меню. (tt_news) | Manas | Общие вопросы | 6 | 16.02.2008 21:41 |
Шаблон для новостей в подкатегорях определённой категории | NiKRON | TypoScript практикум | 1 | 21.11.2007 15:34 |
tt_news, single и меню категорий | NiKRON | Общие вопросы | 2 | 02.07.2007 15:00 |
tt_news - скрыть пустые категории новостей | SteelMaster | Общие вопросы | 1 | 24.05.2007 02:19 |
Меню из подстраниц | Grank | Общие вопросы | 6 | 31.01.2005 18:46 |