2017-02-03 8 views
0

Ich möchte nur das erste verfügbare Bild von verschiedenen Inhaltselementen in einer Spalte anzeigen.TYPO3 erstes verfügbares Bild von Inhaltselementen

Der folgende Code zeigt mir alle verfügbaren Bilder, aber ich brauche nur die erste! Kann mir jemand helfen?

lib.contentImage = CONTENT 
lib.contentImage { 
    wrap = | 
    table = tt_content 
    select { 
    languageField = sys_language_uid 
    where = colPos = 0 
    orderBy = sorting 
    pidInList = 32 
    } 
    renderObj = COA 
    renderObj{ 
    wrap = <div class="item">|</div> 
    10 = FILES 
    10 { 
     references { 
      table = tt_content 
      uid.data = uid 
      fieldName = assets 
     } 
     renderObj = IMAGE 
     renderObj { 
      wrap = <div class="item-image">|</div> 
      file.import.data = file:current:originalUid 
      file.width = 1920c 
      file.height = 600c 
     } 
    } 
    } 
} 

Antwort

1

Sie würden versuchen Somethings mit LOAD_REGISTER

zB festlegen: (nicht getestet)

lib.contentImage = COA 
lib.contentImage { 
    5 = LOAD_REGISTER 
    5.imageRendered = 0 

    10 = CONTENT 
    10 { 
    wrap = | 
    table = tt_content 
    select { 
     languageField = sys_language_uid 
     where = colPos = 0 
     orderBy = sorting 
     pidInList = 32 
    } 
    renderObj = COA 
    renderObj{ 
     wrap = <div class="item">|</div> 
     10 = FILES 
     10 { 
     references { 
      table = tt_content 
      uid.data = uid 
      fieldName = assets 
     } 

     max = 1 

     renderObj = COA 
     renderObj { 
      stdWrap.if.isFalse.data = register:imageRendered 

      5 = LOAD_REGISTER 
      5.imageRendered = 1 

      10 = IMAGE 
      10 { 
      wrap = <div class="item-image">|</div> 
      file.import.data = file:current:originalUid 
      file.width = 1920c 
      file.height = 600c 
      } 
     } 
     } 
    } 
    } 

    99 = RESTORE_REGISTER 
} 
+0

Richtiger Weg, wenn er das erste Bild aller Elemente will. +1 –

0

I verwendet Dies um die URL des ersten Bildes auf einer Seite für offene Graph-Tags zu erhalten.

page.meta.og:image.cObject = CONTENT 
page.meta.og:image.cObject { 
    table = tt_content 
    select { 
     where = (colPos = 0 AND image != 0) 
     selectFields = uid 
     orderBy = sorting 
     max = 1 
    } 
    renderObj = COA 
    renderObj { 
     1 = TEXT 
     1 { 
      cObject = FILES 
      cObject { 
       references { 
        table = tt_content 
        uid.field = uid 
        fieldName = image 
       } 
       maxItems = 1 
       renderObj = TEXT 
       renderObj { 
        typolink.parameter.data = file:current:publicUrl 
        typolink.forceAbsoluteUrl = 1 
        typolink.returnLast = url 
       } 
      } 
     } 
    } 
} 
Verwandte Themen