Ergebnis 1 bis 12 von 12

Thema: Bilderslider mit CE Galerie und [fritzmg/contao-swiper] unter Contao 5.x mit Twig

  1. #1
    Community-Moderator & Contao-Urgestein Avatar von derRenner
    Registriert seit
    23.10.2012.
    Ort
    hoRn|waldviertel
    Beiträge
    2.979
    Contao-Projekt unterstützen

    Support Contao

    Standard Bilderslider mit CE Galerie und [fritzmg/contao-swiper] unter Contao 5.x mit Twig

    Die Erweiterung [fritzmg/contao-swiper] bietet die Möglichkeit, über die Eingabe einer Klasse im Feld Wrapper CSS Klasse, Listen in den Slider einzufügen.
    Ich nutzte diese Möglichkeit auch gerne für Bilderslider - und damit nicht einzelne Inhaltselemente des Types Bild zwischen Umschlag Anfang und Umschlag Ende eingefügt werden müssen, nehme ich diese Möglichkeit über das Inhaltselement Galerie wahr.


    swiper-gallery_02.png

    Mit Contao 5.x haben sich jedoch die Klassen und die HTML-Konstrukte selbst ein wenig geändert.
    Eine Galerie erzeugt nun ein HTML
    Code:
    <div class="content-gallery--cols-1 content-gallery">
      <ul>
        <li></li>
        <li></li>
        <li></li>
         ...
      </ul>
    </div>
    also ohne, dass die <ul> eine Klasse mitbekommt.

    Damit man anfangs beschriebene Möglichkeit jedoch weiterhin nutzen kann, muss das Twig-Template angepasst werden.

    Du legst dir dazu im Backend ein neues Template 'gallery.html.twig' an. Contao verschiebt dir dieses automatisch in den Ordner 'content_element', und falls der Ordner noch nicht exsistiert, wird er automatisch für dich angelegt.
    /templates/content_element/gallery.html.twig

    Nun erstellst du dir einen neuen Ordner 'gallery' im Ordner 'content_element' und kopierst dir dort die Datei gallery.html.twig hinein.
    Den Dateinamen änderst du dir dann - beachte dabei die Namenskonventionen.

    /templates/content_element/gallery/gallery.html.twig
    ändern auf (zum Beispiel):
    /templates/content_element/gallery/swipergallery.html.twig


    swiper-gallery_03.png

    Der Inhalt der Datei swipergallery.html.twig besteht nur aus einer zusätzlich eingefügten Zeile:

    Code:
    {% extends "@Contao/content_element/gallery.html.twig" %}
    
    
    {#
      ** Add changes to the base template here. **
    
      Hint: Try adjusting blocks and attributes instead of
      overwriting the whole template. This way your version
      can remain compatible with future changes to the base
      template as well as adjustments made by extensions.
    
      Currently available blocks:
        "list_component", "list", "list_attributes",
        "list_item_attributes", "list_item", "pagination",
        "list_script", "pagination_script_show_element",
        "pagination_script_activate_selector",
        "picture_component", "image", "sources", "source",
        "schema_org", "figure_component", "media",
        "media_link", "caption", "caption_inner",
        "content", "headline_component",
        "headline_attributes", "headline_inner",
        "wrapper", "wrapper_tag", "attributes", "inner"
    
      Example:
        {% block list_component %}
           {{ parent() }}
           My additional content for 'list_component'…
        {% endblock %}
    #}
    
    {# start changes #}
    {% set list_attributes = attrs(list_attributes|default).addClass('swiperlist') %}
    Ausschlaggebend ist nur die letzte Zeile die eingefügt wurde.
    Hier wird der <ul> eine Klasse 'swiperlist' hinzugefügt, sodass im Frontend nun wie folgt ausgegeben wird:
    Code:
    <div class="content-gallery--cols-1 content-gallery">
      <ul class="swiperlist">
        <li></li>
        <li></li>
        <li></li>
         ...
      </ul>
    </div>
    Im Backend musst du nun noch folgende Anpassungen vornehmen:
    im Inhaltselement 'Galerie' änderst du das Template. Hierzu wählst du unter Inhaltselement-Template dein erstelltes Template aus:
    content_element/gallery/swipergallery [Global]

    im Inhaltselement 'Content Slider - Umschlag Anfang' fügst du im Feld 'Wrapper CSS Klasse' deine Klasse swiperlist ein.


    swiper-gallery_01.png

    Das war's ... im Frontend sollte nun wieder die Galerie als Bilderslider dargestellt sein.
    Grüsse
    Bernhard


  2. #2
    Contao-Nutzer
    Registriert seit
    25.09.2013.
    Beiträge
    209

    Standard Bilder werden untereinander angezeigt

    Moin, gute Anleitung, klappt auch soweit. Nur werden bei mir alle Galeriebilder untereinander angezeigt. In der Galerie selbst hat "Vorschaubilder pro Reihe" dafür auch keine Auswirkung.
    Muss ich noch etwas beachten?

    Viele Grüße
    JEns

  3. #3
    Alter Contao-Hase
    Registriert seit
    24.02.2021.
    Beiträge
    1.471
    Partner-ID
    11715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Dann hast du wahrscheinlich den Slider nicht installiert / nicht eingerichtet

  4. #4
    Contao-Nutzer
    Registriert seit
    25.09.2013.
    Beiträge
    209

    Standard

    fritzmg/contao-swiper in der Version 4.3.1 ist installiert. Muss ich da noch mehr einrichten?

  5. #5
    Alter Contao-Hase
    Registriert seit
    24.02.2021.
    Beiträge
    1.471
    Partner-ID
    11715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Wahrscheinlich der Slider-Wrapper selbst?

    Sollte laut Code wohl der native Contao-Slider sein, der nun ausgetauscht wird.

  6. #6
    Contao-Nutzer
    Registriert seit
    25.09.2013.
    Beiträge
    209

    Standard

    Habe diese benutzt:

    Content-Slider
    Slider Umschlag Anfang Erzeugt den öffnenden Teil des Slider-Umschlags.
    Slider Umschlag Ende Erzeugt den schließenden Teil des Slider-Umschlags.

    Nun habe ich einmal den normalen Slider benutzt und wieder zurück, leider wird jetzt gar kein Bild mehr angezeigt. Im Inspektor sehe ich, dass der gesamte Slide neben dem Wrapper sitzt.

    Da muss ich wohl weiter ausprobieren.

  7. #7
    Alter Contao-Hase
    Registriert seit
    24.02.2021.
    Beiträge
    1.471
    Partner-ID
    11715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Poste mal Screenshots der Inhalts-Elemente im Backend und der Slider-Einstellungen der Wrapper.

  8. #8
    Contao-Nutzer
    Registriert seit
    25.09.2013.
    Beiträge
    209

  9. #9
    Alter Contao-Hase
    Registriert seit
    24.02.2021.
    Beiträge
    1.471
    Partner-ID
    11715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Link zur Seite hast du auch? (Gerne auch via PN)

  10. #10
    Contao-Fan Avatar von bibib
    Registriert seit
    19.06.2009.
    Ort
    Linz, Oberösterreich
    Beiträge
    650
    Partner-ID
    8517

    Standard

    Aktiviert ihr eigentlich die Großansicht für die Galeriebilder, wenn ihr eine Galerie in den Swiper verpackt?
    Ich hätte gerne die Bildergalerie mit Großansicht und die Vor- und Zurück-Steuerschaltflächen des Sliders, aber ich glaube, das verträgt sich nicht.
    Wenn ich ein Bild in Großansicht anschaue und dann mit den Vor- und Zurück-Schaltflächen der Lightbox durch die Galerie klicke und anschließend die Galerie schließe, dann sind die Vor- und Zurück-Steuerschaltflächen des Sliders verschwunden. Der Slider kriegt wohl nicht mit, welches Bild zuletzt angezeigt wurde, als die Großansicht geschlossen wurde. Die Schaltflächen liegen dann nicht über dem aktiven Slide, sondern über dem Slide, der zuletzt zu sehen war, als die Lightbox geöffnet wurde.
    Dafür gibt's wahrscheinlich keine einfache Lösung, oder?

    screen_01.jpg an dieser Stelle öffne ich die Lightbox, klicke ein Bild weiter, schließe sie wieder
    screen_02.jpg die Vor- und Zurück-Schaltflächen liegen nun neben dem Slider ...

    screen_01.jpg
    screen_02.jpg

  11. #11
    Community-Moderator & Contao-Urgestein Avatar von derRenner
    Registriert seit
    23.10.2012.
    Ort
    hoRn|waldviertel
    Beiträge
    2.979
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Nein, dein Problem kann ich nicht nachvollziehen.
    Lightbox ist aktiviert UND die prev-next-buttons sind weiterhin dort, wo sie sein sollen.

    Möglicherweise ein CSS- oder JS-Fehler?
    Ein zusätzliches JS, das dir den Fehler verursacht?
    Grüsse
    Bernhard


  12. #12
    Contao-Fan Avatar von bibib
    Registriert seit
    19.06.2009.
    Ort
    Linz, Oberösterreich
    Beiträge
    650
    Partner-ID
    8517

    Standard

    Danke, das ist ja schon mal gut zu wissen, dass es prinzipiell geht.
    Nein, ich hab kein zusätzliches JS und auch wenn ich mein eigenes CSS deaktiviere und nur das swiper-bundle.min.css verwende, ändert es nichts an der Sache.
    Ich probier nochmal und falls ich nicht weiterkomme, lad ich das mal hoch und poste einen Link.

Aktive Benutzer

Aktive Benutzer

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

Berechtigungen

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