2017-10-23 17 views
0

내 설치 실패 (UID = 99 페이지) 그리고 관련 뉴스 (이 경우에는 1 개의 뉴스, # 948)와 함께 뉴스 제목, 썸네일 및 링크가있는 블록 안에 그것을 읽으 려합니다. 내가 Typoscript했던 : 데이터베이스에Typoscript은 sys_file에 SQL 콘텐츠

  • 검색 관련 링크 모든 뉴스 = 99 (좋아, 내가 만든)
  • 취득이 뉴스 (948) 의 UID (좋아, 내가 만든 그것은)이 뉴스 (11681) (좋아, 내가 만든) "sys_file"테이블에
  • 검색의 UID 에서 그림의 URL과 관련 "sys_file_reference"테이블에있는 모든 파일의 UID에
  • 검색 (불가능)

나는 sys_file의 UID (뉴스 그림)가 필요하지만 "sys_file"테이블에서 쿼리 할 때 데이터가 없습니다. 이 코드의

[... Typoscript ... ] 

10 = TEXT 
10 { 

    field = uid_local 
    wrap = UID of picture to display : | 

} 

20 = CONTENT 
20 { 

table = sys_file 
select { 

    selectFields = identifier 
    pidInList = 0 
    where = sys_file.uid= ###my_marker### 
    markers.my_marker.field = uid_local 

} 
renderObj = COA 
renderObj { 

    10 = TEXT 
    10.field = identifier 
    10.wrap = URL of the news picture : | 

} 
} 

출력은 다음과 같습니다 디스플레이 화면의

UID : 11681

뉴스 사진의 URL :

내가 여러 다른 시도 : 변화의 PID를, 수동으로 uid_local 값을 삽입하십시오 ... 내 URL (데이터베이스의 식별자 열)을 가져올 방법이 없습니다.

내 문제를 해결할 생각이 있습니까? 감사합니다 :)


편집 : 여기에 내가했던 마지막 시도이며 작동합니다.

20 = FILES 
20 { 

    references.table = tx_news_domain_model_news 
    references.uid = 948 
    references.fieldName = fal_media 

    renderObj = IMAGE 
    renderObj.file.import.data = file:current:uid 
    renderObj.file.treatIdAsReference = 1 

} 

답변

1

손으로하지 마십시오. 당신이 정말로 원본 파일에 대한 URL을 원하는 경우

20 = FILES 
20 { 
    references { 
    table = tx_news_domain_model_news 
    // use the news record uid: 
    uid.data = current:originalUid // current:uid 
    // or is it fal_media ? 
    fieldName = media 
    } 
    renderObj = IMAGE 
    renderObj { 
    file { 
     import.data = file:current:uid 
     treatIdAsReference = 1 
     width = 150c 
     height = 150c 
    } 
    altText.data = file:current:alternative 
    titleText.data = file:current:title 
    params = class="menu-img" 
    stdWrap.typolink.parameter.field = uid 
    } 
    // maxItems = 1 
} 

: TYPO3 당신을 도와 드리겠습니다 크기를 조정하지 않고 IMG_RESOURCE 객체를 사용합니다.

+0

감사합니다.하지만 스 니펫을 사용할 수있는 방법을 찾을 수 없습니다. 필자의 경우 "uid.data"와 "import.data"에 무엇을 채워야합니까? "948"(뉴스의 uid)으로 테스트를 위해 수동으로 채우더라도 작동하지 않습니다. 죄송합니다 .. 저는 typoscript 초보자입니다 : ( – Paolito75

+0

'.data'는 정의 된 필드에 액세스하는 데 사용됩니다. 즉각적인 값은'uid = 948'입니다. –

+0

:(둘 다 작동하지 않습니다!) 첫 번째 주제를 편집하여 당신은 내 코드의 최신 버전을 볼 수 있습니다. 작동하지 않는 이유를 이해할 수 없습니다. – Paolito75