Вземете заглавие, nav_title и подзаглавие

Искам да отпечатам полетата title, nav_title и subtitle с Typoscript. Видях, че има няколко възможности. напр. data, field, levelfield, leveltitle, ...

В момента използвам този код (защото единственият, който работи за мен досега):

lib.heading = TEXT
lib.heading.dataWrap = <p class="title"> {leveltitle:0} </p>

но искам нещо с алтернативи като тази

stdWrap.field = subtitle // nav_title // title

Какъв е правилният начин за извличане на тези полета?

Редактиране:

[userFunc = user_isMobile]

page.headerData.10 = TEXT
page.headerData.10.value (
    // ...
)

// ...

lib.heading = TEXT
#lib.heading.dataWrap = <p class="title"> {leveltitle:0} </p>

lib.heading {
  field = title 
  wrap = <p class="title"> | </p>
}

lib.subpages = HMENU
lib.subpages {
  // ...
}

[global]

Самата потребителска функция е функция в php скрипт (user_mobile.php). Той прави откриване на потребителски агент за мобилни устройства и връща true или false.


person testing    schedule 20.11.2012    source източник


Отговори (1)


field ще получи стойности от текущите данни, които във вашия контекст са данните на текущата страница.

lib.heading = TEXT
lib.heading {
  field = subtitle // nav_title // title
  wrap = <p class="title">|</p>
}

leveltitle, leveluid, levelmedia и т.н. ви позволяват да извлечете някои от данните от други страници в основната линия на текущата страница.

За повече информация вижте getText в документация.

person tmt    schedule 20.11.2012
comment
Когато използвам този код, изходът е празен <p class="title"></p>. - person testing; 20.11.2012
comment
Опитайте field = subtitle // title, това са само 2 полета. Има ли някаква разлика? - person tmt; 20.11.2012
comment
Не, няма никаква разлика. Този код работи за мен само при изграждане на меню. - person testing; 21.11.2012
comment
1. Проверете дали този код не е в друг код. 2. Уверете се, че не пропускате | от <p class="title">|</p>. - person tmt; 21.11.2012
comment
Той е в състояние userFunc, но условието е изпълнено, защото с {leveltitle:0} получавам резултатите. Също така тръбата е в опаковката: lib.heading = TEXT lib.heading { field = title wrap = <p class="title"> | </p> } - person testing; 21.11.2012
comment
Можете ли да обясните, че е в userFuns? Работата е там, че leveltitle и подобни са нещо като специални и могат да се използват във всеки контекст. От друга страна за field данните се променят според контекста. Ако можете, публикувайте по-голяма част от кода на TypoScript, за да видите къде се опитвате да използвате това. - person tmt; 21.11.2012
comment
Редактирах въпроса си, но тук няма много повече информация. Кажи ми, ако имаш нужда от нещо. - person testing; 21.11.2012
comment
Не мисля, че условието може да има някакъв ефект върху това, но за да сте сигурни, пробвали ли сте да извадите кода от условието? - person tmt; 21.11.2012
comment
Сега го пробвах без условието - пак същия резултат. - person testing; 22.11.2012
comment
Последното нещо, което ми идва на ум, е да използвам Template -› Template Analyzer, за да проверя за евентуален проблем с кода. - person tmt; 22.11.2012
comment
Сега използвах {page:sub_title} и ми дава информацията, която исках. Но не е идеален, защото често имам два пъти едно и също заглавие (това е грешка в дизайна). Въпреки че вашият код все още не работи и анализаторът на шаблони не ми показа грешка. - person testing; 01.12.2012