2014-12-02 1 views
0

realurl의 URL을 사용하여 tx_news에 대한 모든 태그 목록을 만들고 싶습니다. 태그realurl URL로 뉴스 태그 링크 만들기

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이 작동하지 않습니다. 그래서 realurl이 생성 한 URL을 사용하고 싶습니다. 이것이 가능한가?

답변

2

솔루션에서 수동으로 링크를 작성하려고합니다. 필자는 링크 생성을 위해 typolink를 사용하도록 강력하게 제안합니다. RealURL을 사용할 수 있고 해당 GET 매개 변수가 RealURL 구성에 구성되어 있으면 Typolink가 말하기 URL을 생성합니다. 당신은 태그의 UID에 대한 additionalParams을 설정해야합니다

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를 사용하여 다른 대상 페이지를 설정할 수 있습니다.

+0

오, 좋은 점은 그들이 Typingink가 RealURL로 구성된 경우 말하기 URL을 제공한다는 것을 알지 못했습니다. 추가로,이 코드로 Linktext는 Newstag가 아닌 페이지의 제목입니다. 그것을 가지고 그냥'2.insertData = 1 \t 2.field = 제목' – nbar

+0

방금 ​​게시물에 후자를 추가했습니다. 완료 해줘서 고마워. TypoScript는 모든 것을 가지고 있습니다 :-). – lorenz