Ergebnis 1 bis 12 von 12

Thema: Wie bestimmtes Bild aus dem Array ziehen?

  1. #1
    Contao-Nutzer Avatar von Carino
    Registriert seit
    19.06.2009.
    Ort
    Reichshof, NRW
    Beiträge
    207

    Standard Wie bestimmtes Bild aus dem Array ziehen?

    Hi,

    ich kann im Templates ja mittels:
    <?php echo $this->images->generateMainImage('thumbnail'); ?>
    auf das erste Bild, was als Produktbild hinterlegt ist, zugreifen.

    Wie spreche ich jedoch das 2. oder 3. Bild im Array an?

    Danke für eure Hilfe!

    Grüße,
    Lars

  2. #2
    Contao-Nutzer Avatar von Carino
    Registriert seit
    19.06.2009.
    Ort
    Reichshof, NRW
    Beiträge
    207

    Standard

    Habs mir überlegt, ich lege einfach ein extra feld dafür an.

  3. #3
    Contao-Fan Avatar von bcit6k
    Registriert seit
    01.02.2010.
    Ort
    Bürmoos
    Beiträge
    296

    Standard

    wie hast du die Bilder dan angelegt? als Attribut Media? und wenn ja wie hast du Zugriff auf diese Bekommen?

  4. #4
    Contao-Nutzer
    Registriert seit
    23.07.2009.
    Ort
    mal hier, mal da
    Beiträge
    141
    Partner-ID
    5687

    Standard

    Alle weiteren Bilder kannst du mit ->images->generateGallery(); ausgeben. Aber auch da kannst du die einzelnen Bilder nicht direkt ansprechen.

    Ich hatte das Problem auch gerade erst und hab mir dafür einfach 'ne neue Galerie-Klasse geschrieben. Das geht relativ schnell, da diese Klasse von der Isotope-Galerie-Klasse erbt.


    Viele Grüße,
    Stephan

  5. #5
    Contao-Nutzer Avatar von Carino
    Registriert seit
    19.06.2009.
    Ort
    Reichshof, NRW
    Beiträge
    207

    Standard

    Also ich habe die weiteren Bilder als Media Attribute angelegt, ja.
    Abfragen kann man diese mit z.B.

    PHP-Code:
    <?php echo $this->header_image->generateMainImage('header'); ?>
    wobei "header_image" das Attribut ist und "header" für die Größe und Handhabung in der iso_gallery_defalt.tpl bzw. in der Shopkonfigutation (Bildergrößen) angepasst wird.

    Bei der Bildergalerie, die immer dabei ist, kannst du mit

    PHP-Code:
    <?php echo $this->images->generateMainImage('thumbnail'); ?>
    das 1. Bild der hinterlegten ansprechen, während

    PHP-Code:
    <?php echo $this->images->generateGallery('mini',0); ?>
    alle außer dem 1. Bild ausgibt, und ohne ,0 alle Bilder ausgegeben werden.

    Gruß,
    Lars

  6. #6
    Contao-Fan Avatar von bcit6k
    Registriert seit
    01.02.2010.
    Ort
    Bürmoos
    Beiträge
    296

    Standard

    hi danke für deine Antwort das hat mich auf die Idee gebracht auch eine eigene Funktion in die IsotopeGallery.php zu schreiben. Ich benötige nur den Pfad des Bildes und somit habe ich mir folgende funktion eingesetzt

    PHP-Code:
    public function get_href_for_image(){
            
    $arrFile reset($this->arrFiles);
            return 
    $arrFile['gallery'];
        } 
    danke!

  7. #7
    Contao Core-Team
    Association Vorstand
    Avatar von andreas.schempp
    Registriert seit
    15.06.2009.
    Ort
    Lyss
    Beiträge
    5.614
    Partner-ID
    8667
    Contao-Projekt unterstützen

    Support Contao

    Standard

    In die IsotopeGallery solltest du gar nicht schreiben, das ist nicht update-sicher! Für diesen Zweck können eigene Galerie-Typen angelegt werden, ich würde dir das empfehlen.
    terminal42 gmbh
    Wir sind Contao Premium-Partner! Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.
    Hilfe für Isotope eCommerce kann man auch kaufen: Isotope Circle

  8. #8
    Contao-Fan Avatar von bcit6k
    Registriert seit
    01.02.2010.
    Ort
    Bürmoos
    Beiträge
    296

    Standard

    hi,

    danke für die info, wo muss ich so eine Variante eintragen das die Update sicher ist?

    lg

  9. #9
    Contao Core-Team
    Association Vorstand
    Avatar von andreas.schempp
    Registriert seit
    15.06.2009.
    Ort
    Lyss
    Beiträge
    5.614
    Partner-ID
    8667
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Eine eigene Klasse extends IsotopeGallery anlegen, und diese in deiner config.php aktivieren.

    PHP-Code:
    $GLOBALS['ISO_GAL']['custom'] = 'CustomGallery'
    Dann noch die entsprechenden Sprachlabels, und die neue Galerie in der Shop-Konfiguration auswählen.
    terminal42 gmbh
    Wir sind Contao Premium-Partner! Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.
    Hilfe für Isotope eCommerce kann man auch kaufen: Isotope Circle

  10. #10
    Contao-Fan Avatar von bcit6k
    Registriert seit
    01.02.2010.
    Ort
    Bürmoos
    Beiträge
    296

    Standard

    super danke für deine Hilfe! dann bau ich das gleich so um!

  11. #11
    Contao-Nutzer
    Registriert seit
    20.08.2012.
    Beiträge
    28

    HTML nur die ersten beiden Bilder anzeigen

    Hallo Contao Fans,

    Da ich durch diesen Beitrag und durch "bcit6k"s Hilfe auf die Lösung gekommen bin denke ich schadet es nicht meinen Weg hier zu demonstrieren.

    Ziel war es bei der Produktübersicht auf jedem Produktbild einen Hover Effekt zu haben, der jeweils das 2 Produktbild einblendet.
    Nachdem ich vergeblich versucht habe das 2 Bild alleine aus der Datenbank auszulesen (Ev. kann mir da jemand offenbare, wie genau Isotope aus dem Blob in der DB
    herausfindet, wo das sich dieses Bild befindet ?! ), bin ich nun auf foglede Lösung gestossen:

    Im Template iso_list_default.html5 habe ich unterhalb von <?php echo $this->getGallery('images')->generateMainImage(); ?>
    noch <?php echo $this->getGallery('images')->generateGallery(); ?> eingefügt. Nun werden alle Bilder auf der Webseite angezeigt.

    Per Javascript habe ich nun alle ausgeblendet ausser die ersten 2.

    Code:
    var gallery_img = $('body.products .product_image');
    	
    	jQuery.each(gallery_img, function() {
    		
    		var this_figures = $(this).find('figure');
    		var count = 1;
    		jQuery.each(this_figures, function(){
    			if (count > 2) {
    			$(this).addClass('none');
    			} else {
    				$(this).addClass('img_'+count);
    			}
    			count++;
    		});
    	});
    Danach noch mit CSS die Bilder übereinander gelegt und den Hover Effekt erzeugt.

    Code:
    .product_image {
    	position: relative;
    }
    
    .product_image figure {
    	background-color: #fff;
    }
    
    .product_image figure.none {
    	display: none;
    }
    
    .product_image:hover figure.img_2 {
    	z-index: 99;
    }
    .product_image figure.img_2 {
    	position: absolute;
    	top: 0px;
    	z-index: -1;
    }
    Vieleicht hilft es ja jemandem ;D

    LG
    Kajetan

  12. #12
    Contao-Nutzer Avatar von eBlick
    Registriert seit
    01.04.2012.
    Ort
    Stuttgart
    Beiträge
    139
    User beschenken
    Wunschliste

    Standard Ausgabe Template für Galerie Bilder

    Auch ich würde gerne auf einzelne Bilder der Galerie zugreifen.
    Allerdings möchte ich das Ausgabetemplate modifizieren.

    Beim Bild habe ich einen individuellen Link:
    Bildschirmfoto 2016-04-15 um 09.52.24.png

    Das hier verlinkte Bild öffnet sich allerdings in einem neuen Fenster. Es soll sich ebenfalls in der Lightbox öffnen.

    Dazu würde ich die HTML-Struktur selbst erstellen, benötige aber den Bildlink ['link']aus dem geschützen Array:


    HTML-Code:
    [8ba79334352ccf2f4bb42d4d19cb9629] => Array
                                            (
                                                [src] => he1_50px.jpg
                                                [alt] => 
                                                [link] => /assets/images/r/r53_60_v_he1.jpg
                                                [desc] => HE1 - Echtholz Eiche hell
                                                [translate] => 
                                                [main_size] => width="550" height="550"
                                                [main_imageSize] => Array
                                                    (
                                                        [0] => 550
                                                        [1] => 550
                                                        [2] => 2
                                                        [3] => width="550" height="550"
                                                        [bits] => 8
                                                        [channels] => 3
                                                        [mime] => image/jpeg
                                                    )
    
                                                [main] => assets/images/0/he1_50px-11683f50.jpg
                                            )

    So will es nicht:

    Code:
    <?php echo $this->getGallery('image_inlay_carbon')->field('link')-value(); ?>

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. Focus auf ein bestimmtes Eingabefeld legen
    Von lindesbs im Forum Layout / Templates / Holy Grail
    Antworten: 9
    Letzter Beitrag: 19.12.2010, 13:31
  2. Antworten: 0
    Letzter Beitrag: 16.10.2010, 14:27
  3. Antworten: 1
    Letzter Beitrag: 23.05.2010, 14:25
  4. css-klasse in dcaconfig nur für bestimmtes inhaltselement
    Von aportmann im Forum Sonstiges zu Contao
    Antworten: 0
    Letzter Beitrag: 09.12.2009, 15:08
  5. News für bestimmtes Archiv erweitern
    Von ciss im Forum Entwickler-Fragen
    Antworten: 8
    Letzter Beitrag: 06.08.2009, 19:23

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •