Russian TYPO3 community Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community  

Вернуться   Russian TYPO3 community > Тематические форумы > TypoScript практикум

Ответ
 
Опции темы Опции просмотра
Старый 16.02.2008, 19:18   #1
thebat
Senior Member
 
Аватар для thebat
 
Регистрация: 05.09.2006
Адрес: TYPO3.if.ua
Сообщений: 224
Отправить сообщение для thebat с помощью ICQ Отправить сообщение для thebat с помощью AIM Отправить сообщение для thebat с помощью MSN Отправить сообщение для thebat с помощью Yahoo Отправить сообщение для thebat с помощью Skype™
Lightbulb Просто меню из категорий новостей (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 />
}
}
…, на выводе получаю весь список категорий который находится на странице 22 в том числе и под категории в таком виде
Цитата:
Категория 1
Категория 2
Категория 3
[....]
..., а мне нужно только первый уровень категорий…, и еще проблема в том, что ссылка на категориях не работает, а должно быть,… когда, я клацаю на первую категорию, я должен попадать на страницу со списком новостей этой категории, но это не происходит …
Добавляю
Код:
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 = | &nbsp;|&nbsp; |*| | &nbsp;|&nbsp; |*| | |*|
...здесь не работает...? Что не так написано, как исправить это? (это первый вопрос)

И остается проблема со ссылкой, что-то в ней не так, если посмотреть на ссылку 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", хотя знаю точно, что они там есть.

Возможно, что проблема в том, что у категории есть подкатегории? Тогда еще стоит вопрос, как сделать чтобы, клацая на какой ни будь из категорий, выводился список новостей этой категории, и ее подкатегорий (это второй вопрос).

Как все это реализовать?
__________________
Василий Мосийчук
The BAT!
TYPO3.NET.UA
BLOG.TYPO3.NET.UA

Последний раз редактировалось thebat; 17.02.2008 в 13:40
thebat вне форума   Ответить с цитированием
Старый 16.02.2008, 19:25   #2
void
Senior Member
 
Аватар для void
 
Регистрация: 14.03.2006
Адрес: Russia, Penza
Сообщений: 1,504
Отправить сообщение для void с помощью ICQ
По умолчанию

Это должны быть ссылки? Если нет, то (возможно) проще всего использовать 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
void вне форума   Ответить с цитированием
Старый 16.02.2008, 19:28   #3
thebat
Senior Member
 
Аватар для thebat
 
Регистрация: 05.09.2006
Адрес: TYPO3.if.ua
Сообщений: 224
Отправить сообщение для thebat с помощью ICQ Отправить сообщение для thebat с помощью AIM Отправить сообщение для thebat с помощью MSN Отправить сообщение для thebat с помощью Yahoo Отправить сообщение для thebat с помощью Skype™
По умолчанию

Алексей, спасибо за быстрый ответ.
Цитата:
Сообщение от void Посмотреть сообщение
Это должны быть ссылки?
Да это должны быть ссылки...

Меню практически уже готово. Остается решить две проблемы.

Первое это внедрение в меню этой конструкции
Код:
[...]
stdWrap.typolink.wrap = | &nbsp;|&nbsp; |*| | &nbsp;|&nbsp; |*| | |*|
[...]
Что бы можно было на выводе получить разделитель " | " между пунктами меню.

Второе: Как сделать чтобы, клацая на какую ни будь из категорий, выводился список новостей этой категории, и всех ее подкатегорий?

К примеру, в "Категории 1" (первый уровень) есть под категории (второй уровень)…
Цитата:
- Категории 1
-- Категории 1.1
-- Категории 1.2
-- Категории 1.3
- Категории 2
-- Категории 2.1
-- Категории 2.2
-- Категории 2.3
- Категории 3
-- […]
К Категории 1.3 привязаны записи новостей Новость 1 и новость 2. В меню вывожу только первый уровен. Клацаю на "Категории 1" (первый уровень), а на выводе получаю списко новостей "Категории 1" (первый уровень) и всех её подкатегорий (уровень два и так далее)...
__________________
Василий Мосийчук
The BAT!
TYPO3.NET.UA
BLOG.TYPO3.NET.UA

Последний раз редактировалось thebat; 17.02.2008 в 14:05
thebat вне форума   Ответить с цитированием
Старый 28.02.2008, 14:54   #4
thebat
Senior Member
 
Аватар для thebat
 
Регистрация: 05.09.2006
Адрес: TYPO3.if.ua
Сообщений: 224
Отправить сообщение для thebat с помощью ICQ Отправить сообщение для thebat с помощью AIM Отправить сообщение для thebat с помощью MSN Отправить сообщение для thebat с помощью Yahoo Отправить сообщение для thebat с помощью Skype™
Question Может у кого-то есть предложения на этот счет

Как внедрить в меню (TypoScript меню, смотрите выше) категорий эту конструкцию
Код:
[...]
stdWrap.typolink.wrap = | &nbsp;|&nbsp; |*| | &nbsp;|&nbsp; |*| | |*|
[...]
Что бы можно было на выводе получить разделитель " | " между пунктами меню (TypoScript меню, смотрите выше).

И вообще, почему этот optionSplit не работает здесь?
Код:
[...]
[...].wrap = | &nbsp;|&nbsp; |*| | &nbsp;|&nbsp; |*| | |*|
[...]
__________________
Василий Мосийчук
The BAT!
TYPO3.NET.UA
BLOG.TYPO3.NET.UA
thebat вне форума   Ответить с цитированием
Старый 28.02.2008, 14:56   #5
void
Senior Member
 
Аватар для void
 
Регистрация: 14.03.2006
Адрес: Russia, Penza
Сообщений: 1,504
Отправить сообщение для void с помощью ICQ
По умолчанию

Используйте HTML-код вместо вставки самого |. Что-то типа &0x666;
__________________
TYPO3 FAQ
void вне форума   Ответить с цитированием
Старый 28.02.2008, 14:59   #6
thebat
Senior Member
 
Аватар для thebat
 
Регистрация: 05.09.2006
Адрес: TYPO3.if.ua
Сообщений: 224
Отправить сообщение для thebat с помощью ICQ Отправить сообщение для thebat с помощью AIM Отправить сообщение для thebat с помощью MSN Отправить сообщение для thebat с помощью Yahoo Отправить сообщение для thebat с помощью Skype™
По умолчанию

Цитата:
Сообщение от void Посмотреть сообщение
Используйте HTML-код вместо вставки самого |. Что-то типа &0x666;
Спасибо, я так и делаю ... [&nbsp; & # 1 2 4 ; &nbsp;] просто здесь на странице это & # 1 2 4 ; aвтоматически генерирует " | " У меня это " | " нормально выводится, только " | " в конце мне не нужен ... В TMENU это
Код:
[...]
[...].allWrap = | &nbsp;|&nbsp; |*| | &nbsp;|&nbsp; |*| | |*|
[...]
прекрасно работает без лишних вопросов…
__________________
Василий Мосийчук
The BAT!
TYPO3.NET.UA
BLOG.TYPO3.NET.UA
thebat вне форума   Ответить с цитированием
Старый 17.03.2008, 01:35   #7
thebat
Senior Member
 
Аватар для thebat
 
Регистрация: 05.09.2006
Адрес: TYPO3.if.ua
Сообщений: 224
Отправить сообщение для thebat с помощью ICQ Отправить сообщение для thebat с помощью AIM Отправить сообщение для thebat с помощью MSN Отправить сообщение для thebat с помощью Yahoo Отправить сообщение для thebat с помощью Skype™
Thumbs up Не красиво, но все-таки решил это

Сперва выводим категории 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 = | &nbsp;|&nbsp;[....]}
}
Потом также выводим категорию 6
Код:
{
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 = | [....]}
}
..., но без разделителя и чере COA ставим их по порядку
Код:
Category = COA
Category {
10 < [1,2,3,4,5]
20 < [6]
}
..., вот и все. Полный вариант TS смотрите здесь…
__________________
Василий Мосийчук
The BAT!
TYPO3.NET.UA
BLOG.TYPO3.NET.UA

Последний раз редактировалось thebat; 17.03.2008 в 11:58
thebat вне форума   Ответить с цитированием
Старый 27.03.2008, 23:26   #8
_Michael
Новенький
 
Регистрация: 19.03.2008
Сообщений: 11
По умолчанию

thebat у меня такая же проблема с ссылкой. при клике по категории, пишет на странице no news in this list. если есть решение, поделитесь пожалуйста.
_Michael вне форума   Ответить с цитированием
Старый 03.04.2008, 13:12   #9
thebat
Senior Member
 
Аватар для thebat
 
Регистрация: 05.09.2006
Адрес: TYPO3.if.ua
Сообщений: 224
Отправить сообщение для thebat с помощью ICQ Отправить сообщение для thebat с помощью AIM Отправить сообщение для thebat с помощью MSN Отправить сообщение для thebat с помощью Yahoo Отправить сообщение для thebat с помощью Skype™
Exclamation Будьте внимательны!

Цитата:
Сообщение от _Michael Посмотреть сообщение
thebat ... если есть решение, поделитесь пожалуйста.
"_Michael", прочтите внимательно эту тему, здесь есть решение вашей проблемы.
__________________
Василий Мосийчук
The BAT!
TYPO3.NET.UA
BLOG.TYPO3.NET.UA
thebat вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод списка определенных категорий новостей в меню. (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


Часовой пояс GMT +4, время: 16:12.


Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot

Хостинг и техническая поддержка: TYPO3 Лаборатория