Создавайте ссылки на новостные теги с реальным URL
Я хотел бы создать список всех тегов для tx_news с URL от realurl.
Конфигурация RealURL для тегов:
'tag' => array(
array(
'GETvar' => 'tx_news_pi1[overwriteDemand][tags]',
'lookUpTable' => array(
'table' => 'tx_news_domain_model_tag',
'id_field' => 'uid',
'alias_field' => 'CONCAT(title, "-", uid)',
'addWhereClause' => ' AND NOT deleted',
'useUniqueCache' => 1,
'useUniqueCache_conf' => array(
'strtolower' => 1,
'spaceCharacter' => '-'
)
)
)
),
Прямо сейчас список создается следующим образом:
newsTags = CONTENT
newsTags {
table = tx_news_domain_model_tag
select {
pidInList = 1,298
hidden = 0
deleted = 0
orderBy = title
}
orderBy = title
renderObj = COA
renderObj {
wrap = |
1 = LOAD_REGISTER
1 {
Counter.cObject = TEXT
Counter.cObject.data = register:Counter
Counter.cObject.wrap = |+1
Counter.prioriCalc = intval
}
2 = TEXT
2.insertData = 1
2.field = title
2.wrap = <li data-index="{register:Counter}"><a href="/labels/tag/|-
3 = TEXT
3.field = uid
3.wrap = |">
5 = TEXT
5.field = title
5.wrap = |</a></li>
}
wrap = <ul>|</ul>
}
игнорировать регистр на данный момент. URL просто генерируется с помощью Title-UID. Иногда заголовок имеет точку, а затем URL не работает. Поэтому я хотел бы использовать URL, который создает realurl. Это возможно?
1 ответ
В вашем решении вы пытаетесь создать ссылку вручную. Я настоятельно рекомендую использовать typolink для генерации ссылок. Если RealURL доступен и соответствующие параметры GET настроены в конфигурации RealURL, Typolink генерирует говорящие URL-адреса. Вам просто нужно установить additionalParams
для тега UID:
newsTags = CONTENT
newsTags {
table = tx_news_domain_model_tag
select {
pidInList = 1,298
hidden = 0
deleted = 0
orderBy = title
}
orderBy = title
renderObj = COA
renderObj {
1 = LOAD_REGISTER
1 {
Counter.cObject = TEXT
Counter.cObject.data = register:Counter
Counter.cObject.wrap = |+1
Counter.prioriCalc = intval
}
2 = TEXT
2.field = title
2.insertData = 1
2.typolink {
# link to current page
parameter.current = 1
# the current tag
additionalParams = &tx_news_pi1[overwriteDemand][tags]={field:uid}
additionalParams.insertData = 1
}
2.wrap = <li data-index="{register:Counter}">|</li>
}
wrap = <ul>|</ul>
}
Конечно, вы можете установить целевую страницу по-другому, просто используя parameter = 999
,