[Frage] Bilder aus Seiten-Ressourcen verlinken TYPO3-Version: -

  • -Agron- -Agron-
    TYPO3-Anwärter
    0 x
    7 Beiträge
    0 Hilfreiche Beiträge
    31. 07. 2014, 10:52

    Hallo,

    ich habe ein Design wo ich ein Bild aus den Resourcen an einer fixen Position im Template anzeige und dieses sollte dann verlinkt werden. Die Anzeige des Bildes funktioniert super, nur leider komme ich nicht an den vergeben Link heran.

    Derzeit bekomme ich das Bild folgendermaßen:

    1. obj.headerimage = IMG_RESOURCE
    2. obj.headerimage {
    3. file {
    4. import.data = levelmedia:-1
    5. treatIdAsReference = 1
    6. import.listNum = rand
    7. }
    8. }

    Und übergebe es dann mittels Variable an das Template.

    Hat da jemand eine Seite oder ein Stück Code um mir auf die Sprünge zu helfen?

  • Hilfreichster Beitrag

  • runde8 runde8
    TYPO3-Anwärter
    1 x
    4 Beiträge
    2 Hilfreiche Beiträge
    06. 02. 2018, 22:46 - Hilfreichster Beitrag

    Das Thema ruht ja schon eine ganze Weile... aber ich wollte kurz meine Lösung dazu mit euch teilen:
    [code]logo = FILES
    logo {
    references {
    data = levelmedia: -1, slide
    }

    renderObj = IMAGE
    renderObj {
    file.import.dataWrap = {file:current:storage}:{file:current:identifier}
    altText.data = file:current:title
    stdWrap {
    typolink {
    parameter.data = file:current:link
    ATagParams = class="navbar-brand"
    extTarget = _top
    }
    }
    }
    }
    [/code]

    Falls noch jemand via Google hier landet. Getestet in TYPO3 8LTS

    - Manchmal kann man einfach nur noch besser werden! -


  • Chrissli Chrissli
    Jedi-General
    0 x
    1016 Beiträge
    28 Hilfreiche Beiträge
    31. 07. 2014, 15:40

    Nach welchem Prinzip soll das dan verlinkt werden? Fix?

    God's in his heaven, all's right with the world

  • -Agron- -Agron-
    TYPO3-Anwärter
    0 x
    7 Beiträge
    0 Hilfreiche Beiträge
    31. 07. 2014, 22:21

    eine fixe Verlinkung wäre ja leicht, ist es aber leider nicht.
    Man kann bei den Resourcen im Backend ja Bilder hinzufügen. Diesen Bildern kann man auch einen Link geben und auf genau diesen soll das Bild dann linken.

    Ich habe leider derzeit keinen Zugriff von meinem privaten PC auf die Seite, werde aber einen Screenshot von einer anderen Seite anhängen, damit ihr wisst was ich meine.

    Ich würde gerne den Link von dem Bild (in diesem Fall wird es als Hintergrund verwendet) in Fluid verwenden. Wie kann ich das mittels Typoscript auslesen und dann als Variable übergeben?
    Der Link sollte auch immer zum gewählten Bild passen, weil dort wo ich das brauche entsteht eine Art Banner-Werbung wo das Bild zu einer anderen Seite linkt.

    Vielen Dank

    Anhänge (1)
    resource-link.png image/png 0,00 B 321 heruntergeladen
  • Chrissli Chrissli
    Jedi-General
    0 x
    1016 Beiträge
    28 Hilfreiche Beiträge
    01. 08. 2014, 09:06

    z.b.

    1. obj.headerimage.file.typolink.parameter.data = file:current:link

    God's in his heaven, all's right with the world

  • -Agron- -Agron-
    TYPO3-Anwärter
    0 x
    7 Beiträge
    0 Hilfreiche Beiträge
    01. 08. 2014, 15:38

    So schaut es derzeit aus und ich hab schon einige Varianten ausprobiert um auf die Variable zuzugreifen.
    Gibt es irgendwo eine gute Dokumentation wie die Struktur von z.B. für IMG_RESOURCE ausschaut?

    1. obj.headerimage = IMG_RESOURCE
    2. obj.headerimage {
    3. file {
    4. import.data = levelmedia:-1
    5. treatIdAsReference = 1
    6. import.listNum = rand
    7. typolink.parameter.data = file:current:link
    8. }
    9. }
    10.  
    11. tmpl.default = FLUIDTEMPLATE
    12. tmpl.default {
    13. file = {$privateMedia}/templates/default.html
    14. partialRootPath = {$privateMedia}/partials
    15. layoutRootPath = {$privateMedia}/layouts
    16.  
    17. variables {
    18. menu < obj.menu
    19. content < styles.content.get
    20. social < obj.social
    21. logo < obj.logo
    22. copyright < obj.copyright
    23. background < obj.headerimage
    24. backgroundlink < obj.headerimage.?!?
    25. }
    26. }

  • -Agron- -Agron-
    TYPO3-Anwärter
    0 x
    7 Beiträge
    0 Hilfreiche Beiträge
    04. 08. 2014, 13:56

    Ich glaube ich weiß jetzt etwas genauer wo das Problem ist.
    Ich möchte ja kein komplettes element erzeugen, sondern möchte ich 2 Werte in zwei unterschiedlichen Variabeln gespeichert haben.
    Leider lässt mich Typoscript den Wert innerhalb des IMAGE bzw IMG_RESOURCE Object nicht in eine andere Variabel speichern.
    Kennt da jemand eine Möglichkeit wie das dennoch möglich ist?

    Zum Beispiel bekomme cih folgendes nicht hin:

    1. tmpValue = TEXT;
    2. tmpValue = TS_Test
    3. // in tmpValue ist nun "TS_Test" als String gespeichert.
    4. obj.headerimage2 = IMAGE
    5. obj.headerimage2 {
    6. file {
    7. import.data = levelmedia:-1
    8. treatIdAsReference = 1
    9. import.listNum = rand
    10. }
    11. enable = 1
    12. parameter = file:current:link
    13. tmpValue = file:current:link
    14. }
    15. }
    16. }
    17. }
    18. // in tmpValue steht noch immer "TS_Test" als String drinnen. Warum?

  • Chrissli Chrissli
    Jedi-General
    0 x
    1016 Beiträge
    28 Hilfreiche Beiträge
    05. 08. 2014, 08:54

    Korrekterweise sollte es

    1. tmpValue.value =) TS_Test

    heissen.

    Ohne mich zu weit aus dem Fenster lehnen zu wollen, eine Zuordnung wie du sie hier versuchst wird nicht funktionieren, weil der Scope nicht stimmt.

    Allerdings ist mir auch nicht ganz klar was du damit bezwecken willst...

    God's in his heaven, all's right with the world

  • -Agron- -Agron-
    TYPO3-Anwärter
    0 x
    7 Beiträge
    0 Hilfreiche Beiträge
    05. 08. 2014, 09:38

    .value hatte ich natürlich vergessen. Bei den vielen Dingen die ich ausprobiert habe, ist das untergegangen.

    =) als Zuweisung habe ich bisher noch gar nicht gesehen. Hast du vielleicht einen Link wo das näher erläutert wird.
    Denn das Verhalten von Typoscript ist da meiner Meinung nach etwas eigen. Aus anderen Programmiersprachen bin ich es nämlich gewohnt auf "globale Variablen" bzw Variablen der übergeordneten Struktur ganz einfach zugreifen zu können.

    Was ich damit machen möchte/muss:
    Es gibt ein Content div mit einem Background Image und background-size: cover. um dieses div soll ein link gesetzt werden welcher von der image resource kommt. Es sollt damit bei jedem Seitenaufruf ein anderes Hintergrundbild gewählt werden und für jedes Bild ist natürlich ein anderer Hintergrund ausgewählt.

    Das schaut ca so aus:

    1. <a href="Link_vom_Bild">
    2. <div id="content-container" style="background-image: url('Pfad_zum_Bild');">
    3. <!-- content -->
    4. </div>
    5. </a>

  • Chrissli Chrissli
    Jedi-General
    0 x
    1016 Beiträge
    28 Hilfreiche Beiträge
    05. 08. 2014, 09:46

    Der ")" gehört da nicht hin, der ist reingerutscht :)

    So spontan fällt mir zu deinem Problem aber leider auch nicht mehr ein

    God's in his heaven, all's right with the world

  • -Agron- -Agron-
    TYPO3-Anwärter
    0 x
    7 Beiträge
    0 Hilfreiche Beiträge
    05. 08. 2014, 09:52

    Ok. Das ist sehr schade.
    Denn das blöde ist, dass ich verschiedene Content Templates habe.

    Ich habe mir gedacht, dass ich das ganze Konstrukut einfach mit Typoscript zusammen baue. Aber dadurch, dass ich <f:render section="content" /> genau im Content Bereich habe, würde das einen gemischten Modus f:format Modus ergeben. Alles sehr blöd :S