Managed Server
Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: MODUL: MITS ImageSlider für modified eCommerce Shopsoftware by Hetfield

    karsta.de

    • Experte
    • Beiträge: 3.048
    Code: PHP  [Auswählen]
    <?php
      require_once(DIR_FS_INC . 'xtc_banner_exists.inc.php');
      require_once(DIR_FS_INC . 'xtc_display_banner.inc.php');
      require_once(DIR_FS_INC . 'xtc_update_banner_display_count.inc.php');
     
      if (MODULE_BANNER_MANAGER_STATUS == 'true') {
        if ($slider_2 = xtc_banner_exists('slider', 'slider_2')) {
          $smarty->assign('SLIDER_2', xtc_display_banner('slider', $slider_2));
        }

            if ($banner_3 = xtc_banner_exists('dynamic', 'banner_3')) {
              $smarty->assign('BANNER_3', xtc_display_banner('static', $banner_3));
            }
      }

    ?>

    Ich habe so eine Datei auch im includes/extra/header/header_body/.
    Natürlich mit der entsprechenden Slidernummer und dann so wie oben beschrieben Antwort #957 in die index.html einfügen.
    Wenn dieser Slider nur auf der Startseite sein soll, unbedingt in die $home-Abfrage setzen.

    Code: PHP  [Auswählen]
    {if isset($home) && $home == true}
    .....
    {/if}

    BG Karsta

    petgro

    • Neu im Forum
    • Beiträge: 31
    Hallo Karsta,

    sorry jetzt hab ich vollständig den Faden verloren.

    Bitte nochmal einfach wie bekomme ich einen zweiten Slider auf die Startseite beim Bootstrap4?
    In den Content seiten brauch ich keinen Slider.

    In der  includes/extra/header/header_body/  hab ich eine banner.php wie gehört die geändert?
    Und wo muss ich den Rest in die index.html schreiben?

    Danke Peter

    [EDIT Tomcraft 13.09.2020: Satzzeichen ergänzt.]

    karsta.de

    • Experte
    • Beiträge: 3.048
    [...]
    In der  includes/extra/header/header_body/  hab ich eine banner.php wie gehört die geändert?
    [...]

    Sorry, hatte dir ja den Pfad zur Standarddatei geschrieben.
    Ich habe dafür eine extra Datei im includes/extra/header/header_body/slider.php mit genau diesem Inhalt (wie oben):

    Code: PHP  [Auswählen]
    <?php
      require_once(DIR_FS_INC . 'xtc_banner_exists.inc.php');
      require_once(DIR_FS_INC . 'xtc_display_banner.inc.php');
      require_once(DIR_FS_INC . 'xtc_update_banner_display_count.inc.php');
     
      if (MODULE_BANNER_MANAGER_STATUS == 'true') {

            if ($slider_2 = xtc_banner_exists('slider', 'slider_2')) {
          $smarty->assign('SLIDER_2', xtc_display_banner('slider', $slider_2));
        }
           
            if ($slider_3 = xtc_banner_exists('slider', 'slider_3')) {
          $smarty->assign('SLIDER_3', xtc_display_banner('slider', $slider_3));
        }
           
      }
    ?>

    In die index.html, da wo der Slider hin soll:

    Code: PHP  [Auswählen]
    {if isset($home) && $home == true}
    {if isset($SLIDER_2)}          
    <div id="myCarousel" class="carousel slide{if $smarty.const.BS4_CAROUSEL_SHOW == 'shop'} container{/if}{if $smarty.const.BS4_CAROUSEL_FADE == 'true'} carousel-fade{/if} d-none d-sm-block mb-4 text-center" data-ride="carousel">
            <ol class="carousel-indicators">
                    {foreach name=aussen item=slider from=$SLIDER_2}<li data-target="#myCarousel" data-slide-to="{$smarty.foreach.aussen.iteration - 1}"{if $smarty.foreach.aussen.first} class="active"{/if}></li>{/foreach}
            </ol>
            <div class="carousel-inner">
                    {foreach name=aussen item=slider from=$SLIDER_2}
                    <div class="carousel-item{if $smarty.foreach.aussen.first} active{/if}">{$slider.IMAGE|replace:'<img':'<img class="img-fluid" '}
                            <div class="container"><div class="carousel-caption">{$slider.TEXT}</div></div>
                    </div>
                    {/foreach}
            </div>
    </div>
    {/if}
    {/if}

    Das wars. Nicht getestet.

    BG Karsta

    petgro

    • Neu im Forum
    • Beiträge: 31
    Hallo Karsta

    habe eine includes/extra/header/header_body/slider.php mit deinem php-Text neu angelegt

    dann habe ich den zweiten php-Text von dir nicht in die index.html sondern in die bootstrap4/module/includes/slider.html eingefügt .

    Zusätzlich Buttons zum manuellen weiterschalten der Slider Bilder eingefügt

    Code: PHP  [Auswählen]
    <div id="myCarousel" class="carousel slide{if $smarty.const.BS4_CAROUSEL_SHOW == 'shop'} container{/if}{if $smarty.const.BS4_CAROUSEL_FADE == 'true'} carousel-fade{/if} d-none d-sm-block mb-4 text-center" data-ride="carousel">
            <ol class="carousel-indicators">
                    {foreach name=aussen item=slider from=$SLIDER}<li data-target="#myCarousel" data-slide-to="{$smarty.foreach.aussen.iteration - 1}"{if $smarty.foreach.aussen.first} class="active"{/if}></li>{/foreach}

            </ol>
            <div class="carousel-inner">
                    {foreach name=aussen item=slider from=$SLIDER}
                    <div class="carousel-item{if $smarty.foreach.aussen.first} active{/if}">{$slider.IMAGE|replace:'<img':'<img class="img-fluid" '}
                            <div class="container"><div class="carousel-caption">{$slider.TEXT}</div></div>
                    </div>
                    {/foreach}
           
            </div>
      <span class="carousel-controls w-100">
                            <a class="d-inline-block float-left" href="#myCarousel" data-slide="prev">
                                    {$dummy|bs4button:'button_carousel1': 'aria-hidden="true"'}
                                    <span class="sr-only">{$smarty.const.IMAGE_BUTTON_BACK}</span>
                            </a>
                            <a class="d-inline-block float-right" href="#myCarousel" data-slide="next">
                                    {$dummy|bs4button:'button_carousel2': 'aria-hidden="true"'}
                                    <span class="sr-only">{$smarty.const.IMAGE_BUTTON_CONTINUE}</span>
                            </a>
                </span>
                </div>
      {if isset($home) && $home == true}
    {if isset($SLIDER_2)}          
    <div id="myCarousel1" class="carousel slide{if $smarty.const.BS4_CAROUSEL_SHOW == 'shop'} container{/if}{if $smarty.const.BS4_CAROUSEL_FADE == 'true'} carousel-fade{/if} d-none d-sm-block mb-4 text-center" data-ride="carousel">
            <ol class="carousel-indicators">
                    {foreach name=aussen item=slider from=$SLIDER_2}<li data-target="#myCarousel1" data-slide-to="{$smarty.foreach.aussen.iteration - 1}"{if $smarty.foreach.aussen.first} class="active"{/if}></li>{/foreach}
            </ol>
            <div class="carousel-inner">
                    {foreach name=aussen item=slider from=$SLIDER_2}
                    <div class="carousel-item{if $smarty.foreach.aussen.first} active{/if}">{$slider.IMAGE|replace:'<img':'<img class="img-fluid" '}
                            <div class="container"><div class="carousel-caption">{$slider.TEXT}</div></div>
                    </div>
                    {/foreach}
            </div>
    </div>
    {/if}
    {/if}
     
      <span class="carousel-controls w-100">
                            <a class="d-inline-block float-left" href="#myCarousel1" data-slide="prev">
                                    {$dummy|bs4button:'button_carousel1': 'aria-hidden="true"'}
                                    <span class="sr-only">{$smarty.const.IMAGE_BUTTON_BACK}</span>
                            </a>
                            <a class="d-inline-block float-right" href="#myCarousel1" data-slide="next">
                                    {$dummy|bs4button:'button_carousel2': 'aria-hidden="true"'}
                                    <span class="sr-only">{$smarty.const.IMAGE_BUTTON_CONTINUE}</span>
                            </a>
                </span>
    </div>

    zusätzlich für slider_2 "Buttons zum manuellen weiterschalten der Slider Bilder" muss in der bootstrap4/javascript/bs4.js ein

    Code: PHP  [Auswählen]
    $('#myCarousel1').carousel({interval:4000});

    eigefügt werden gleich unter

    Code: PHP  [Auswählen]
    $('#myCarousel').carousel({interval:4000});

    [EDIT Tomcraft 14.09.2020: Code formatiert.]

    petgro

    • Neu im Forum
    • Beiträge: 31
    sieht dann so aus

    Danke nochmals  Karsta

    jetzt denke ich hab ich alles was ich brauche

    Gruß Peter

    spacevoyager

    • Neu im Forum
    • Beiträge: 9
    Hallo zusammen,

    leider klappt es bei mir nicht. Ich habe gerade die neueste Version des Shop System installiert (v2.0.5.1 rev 12725 dated: 2020-04-22).
    Das Plugin heruntergeladen und installiert. Im Backend klappt alles. Dann habe ich die Zeile in die index.html vom Template eingefügt:

    Code: PHP  [Auswählen]
    {if isset($MITS_IMAGESLIDER)}{$MITS_IMAGESLIDER}{/if}

     Direkt nach:

    Code: PHP  [Auswählen]
    {if isset($BANNER)}<div class="content_banner cf">{$BANNER}</div>{/if}

    Ein Bild wird ganz kurz eingeblendet, dann verschwindet der Slider wieder komplett. Klingt nach dem gleichen Fehler wie bei Karfunkel.
    Allerdings habe ich nicht das Standard Template sondern das tpl_modified_responsive.
    Meine Modified Shop Kenntnisse sind begrenzt. Ich hoffe ihr könnt mir helfen?

    Gruß
    Falko

    [EDIT Tomcraft 24.09.2020: Code formatiert.]

    Roberto75

    • Viel Schreiber
    • Beiträge: 833
    Hallo zusammen,

    ist der Image-Slider schon für Modified 2.0.5.1 angepasst worden? Ich konnte das, was spacevoyager schreibt, nachvollziehen. Das Sliderbild wird ganz kurz eingeblendet und verschwindet dann. Der Slider funktioniert nur mit dem Slider-Plugin jquey.innerfade korrekt. Ich meine aber, das ist schon seit der Version 2.0.4.0 so.

    Gruß

    Robert

    Hetfield

    • modified Team
    • Beiträge: 937
    Auch wenn es inzwischen den ImageSlider als Version 2.03 gibt, funktioniert der ImageSlider auch in Version 2.02 auch in der 2.0.5.1. eigentlich immer noch sehr gut.

    Allerdings ist der NivoSlider sehr veraltet und wurde jetzt auch seit ca. 8 Jahren nicht mehr weiterentwickelt. Da wundert es wohl nicht, wenn dieser eventuell nicht mehr mit höheren jQuery-Versionen funktioniert. Und auch der aktuellste FlexSlider 2 im ImageSlider 2.03 funktioniert mit jQuery 3.x nur in Kombination mit jQuery-Migrate. Für die Nutzer dieser Plugins bleiben die Plugins aber auch weiterhin im Imageslider enthalten.

    Falls aber jemand Anregungen hat für eine jQuery-Plugin-Alternative zu bxSlider usw., dann bin ich gerne für Vorschläge offen.

    MfG Hetfield  8-)

    karsta.de

    • Experte
    • Beiträge: 3.048
    Hallo Hetfield,

    ich arbeite zwar nicht mit deinem neuen Slider ab Version 2.x.x.x, aber der Nivoslider funktioniert immer noch wunderbar mit jquery-3.5.1.min.js. Nutze ich für 3 Kunden im Zusammenhang mit dem Banner-Manager ohne Probleme.

    BG Karsta

    Hetfield

    • modified Team
    • Beiträge: 937
    Hallo Karsta,

    vielen Dank für die Information. Ich nutze den NivoSlider nirgends und kümmere mich deshalb nicht mehr wirklich darum, deshalb nur die Vermutung.

    MfG Hetfield 8)

    Timm

    • Fördermitglied
    • Beiträge: 6.165
    @Hetfield
    Frag mal @Markus, der hatte mir letztens für nen Bekannten was auf Open source Basis empfohlen. Kann mich aber nicht mehr erinnern. Ich selbst nutze ein kostenpflichtiges Modul von magic Toolbox.

    Gruß Timm

    Hetfield

    • modified Team
    • Beiträge: 937
    Danke Timm, werde ich machen!

    MfG Hetfield 8)

    voodoopupp

    • Fördermitglied
    • Beiträge: 1.852
    • Geschlecht:
    Zwei Anregungen:
    1. warum steht denn hier die aktuelle Version 2.03. nicht zur Verfügung, die Hetfield auf der eigenen Seite anbietet?

    2. eine Erweiterung für mehrere Bilder pro Slide wären natürlich toll, das es in der Tat immer mehr Richtung <picture> und <srcset> geht

    Grüße
    Dominik

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.185
    • Geschlecht:
    Version 2.03 in Beitrag 1 hinzugefügt.

    Changelog:
    • NEU in v2.03: Diverse Optimierungen am Modul.
    • NEU in v2.03: Startzeit und Endzeit für einzelne Sliderbilder festlegbar.
    • NEU in v2.03: Benutzerdefinierter HTML-Code für eigene Slider-Plugins möglich!
    • NEU in v2.03: Bessere Übersicht z.B. durch Sprachtabs beim Bearbeiten. Sliderbild in der Übersicht sichtbar usw.
    • NEU in v2.03: Slidergruppen jetzt für Produkte, Kategorien und Content-Seiten möglich. Damit können Slider direkt zu Produkten, Kategorien und Content-Seiten hinzugefügt werden (kleine Templateanpassungen erforderlich).
    • NEU in v2.03: Neues Plugin Slick integriert, bekannt aus dem ProductsTreadmill und der neuen modified eCommerce Shopsoftware 2.0.6.0.
    • NEU in v2.03: Zusätzliche Bilder für Tablet-View und Mobile-View als pictureset integriert.
    • NEU in v2.03: Support für lazyload hinzugefügt

    Grüße Torsten

    voodoopupp

    • Fördermitglied
    • Beiträge: 1.852
    • Geschlecht:
    Tip top.

    Und ich hatte überlesen, dass picture srcset wohl in der 2.03 bereits enthalten ist!

    Grüße
    Dominik
    654 Antworten
    208392 Aufrufe
    24. August 2023, 17:27:17 von Jürgen
    4 Antworten
    1742 Aufrufe
    02. April 2019, 11:18:20 von eronweb
    2 Antworten
    4392 Aufrufe
    01. September 2010, 12:12:08 von Tomcraft
               
    anything