вторник, 8 ноября 2011 г.

Алиасы для файлов в новостях или этот сумасшедший TypoScript

Думаю все знают, что к каждой новости в Typo3 можно приатачить какие-либо файлы.
Иногда такие файлы нужно вывести в специальном боксе или "киоске". Но что делать если имена файлов очень длинные, без пробелов и в отведенную для них область просто не помещаются?



Выход один - необходимо каждому файлу сопоставить алиас. Как это сделать? Это можно реализовать с помощью чумачечего TypoScript, причем без установки дополнительных расширений.
Для начала нужно определиться с полем, которое будет содержать в себе алиасы файлов. Т.к. у меня картинок в новостях не было, то я решил заюзать стандартное и родное для tt_news поле - imagecaption.


Теперь немного "интуитивно-понятного" скрипта, который мы размещаем в нашем шаблоне:
plugin.tt_news {
newsFiles {
labelStdWrap.cObject = COA
labelStdWrap.cObject {
10 = TEXT
10 {
field = imagecaption
split.token.char = 10
split.returnKey.data = register : FILE_NUM
}

20 = LOAD_REGISTER
20 {
FILE_NUM.cObject = TEXT
FILE_NUM.cObject.data = register:FILE_NUM
FILE_NUM.cObject.wrap = | +1
FILE_NUM.prioriCalc = intval
}
}
}
}

... и ву-а-ля



P.S. Спасибо немецкому форуму, который так красиво решил эту нетривиальную задачу!

1 коммент.:

Анонимный комментирует...

Хорошо что ты ведешь блог! Так держать!

Отправить комментарий

О себе

Моя фотография
Вадим Гиркало
Фрилансер, веб-разработчик сайтов на базе бесплатной, мощнейшей и очень гибкой CMS системы - TYPO3.
Просмотреть профиль

Позвонить мне в Skype

TOP - 3