TYPO3 – Image via typoscript und Datenbank auslesen

Möchtet Ihr zum Beispiel für den meta-Tag og:image ein Bild aus euren eigenen Extension auslesen, so könnt Ihr dies zum Beispiel mit TYPO3 typoscript und FILE / IMG_RESOURCE abfragen.

Fragen wir nun mit hilfe von typoscript die Datenbank-Tabelle ab: tx_ext_datenbanktabelle und anschließend das das Datenbank-Feld: header_image
Dort liegt unser Bild in der Datenbank.

TYPOSCRIPT Bild auslesen und beschneiden:

ogImage = COA
ogImage {
            10 = FILES
            10 {
                references {
                    table = tx_ext_datenbanktabelle
                    uid.data = GP:tx_ext_action|tx_ext_controller_name
                    fieldName = header_image
                }
                renderObj = IMG_RESOURCE
                renderObj {
                    file {
                        treatIdAsReference = 1
                        import.data = file:current:uid
                        width = 1200c
                        height = 630c
                    }
                }
            }
        }

(Bilder bei Facebook-Share sollten min. 1200 x 630px haben, da ich dort FullHD Bilder habe, schneide ich diese noch vorher)

TYPOSCRIPT Roh-Bild auslesen:

ogImage = COA
ogImage {
10 = FILES
10 {
    references {
        table = tx_ext_datenbanktabelle
        uid.data = GP:tx_ext_action|tx_ext_controller_name
        fieldName = header_image
    }
    renderObj = TEXT
    renderObj {
        data = file:current:publicUrl
    }
}
}

(Hier wird nur die Bild-URL ausgegeben.)

Nun übergebe ich noch den neuen Bild-Wert an den HTML meta Tag: og:image

page {
        headerData {
            # FB og Image
            31 = TEXT
            31 < lib.ogImage
            31 {
                stdWrap.noTrimWrap = |<meta property="og:image" content="|">|
                stdWrap.insertData = 1
            }
}
}

Natürlich lassen sich auch ganz anderen Daten noch auslesen via typoscript und der TYPO3 Datenbank, aber hier ist es ein „Sonderfall“.

Hier noch ein Beispiel, wie ich den Titel meiner Extension-Datensatz auslese und an og:titel übergebe:

        ogTitle = COA
        ogTitle {
            10 = RECORDS
            10 {
                source = 1
                dontCheckPid = 1
                tables = tx_ext_datenbanktabelle
                conf {
                    tx_ext_datenbanktabelle = TEXT
                    tx_ext_datenbanktabelle {
                        field = title
                        crop = 80 | | 1
                        stripHtml = 1
                        htmlSpecialChars = 1
                    }
                }
            }
            stdWrap.noTrimWrap = |||
            stdWrap.insertData = 1
        }

Gerne in den Kommentaren weiter typoscript Lösungen oder Beispiele schreiben.

Eure Meinung zu dem Artikel ist gefragt! Schreibt mir ein Kommentar

Hat Euch der Artikel weitergeholfen oder gefallen?
Ich freue mich auf einen Blick auf meine Amazon-Wunschliste. Vielen Dank!

Hat Euch der Artikel weitergeholfen oder gefallen? Ich freue mich auf einen Blick auf meine Amazon-Wunschliste. Vielen Dank!Ich bin freiberuflicher TYPO3-Entwickler, Web-Entwickler und Frontend-Entwickler. Ich arbeite im und für das Web etwas mehr als 12 Jahre. Mehr Infos zu der TYPO3 Internetagentur - INGENIUMDESIGN.

Leave a Reply

Next ArticleTYPO3 - Wie geht es weiter - T3CS17