mpNivoSlider: Nivo Slider Image-Gallery Modul

Alles rund um Module und Plugins in CONTENIDO 4.10.
Antworten
xmurrix
Beiträge: 3200
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Hat sich bedankt: 1 Mal
Danksagung erhalten: 9 Mal
Kontaktdaten:

mpNivoSlider: Nivo Slider Image-Gallery Modul

Beitrag von xmurrix »

BESCHREIBUNG

mpNivoSlider: Nivo Slider Image-Gallery Modul für CONTENIDO CMS 4.9.x - 4.10.x

Nivo Slider (v3.2) ist ein Image-Slider basierend auf jQuery, mit vielen Features wie Effekte, Tastatursteuerung, Verlinkung von Bildern, Themes, diverse Einstellungen, usw. Benötigt jQuery v1.7+ und unterstützt läuft unter Internet Explorer v7+, Firefox v3+, Google Chrome v4+, Safari v4+, Opera v10+

Die CONTENIDO Modul Version des Nivo Sliders bietet eine Oberfläche zur einfachen Konfiguration sämtlicher Slider-Optionen.
Unterstützt die Bildformate jpg, jpeg, png, und gif. Die Skalierung der Bilder ist von der installierten GD-Library oder ImageMagick abhängig.

Konfigurationsmöglichkeiten des Moduls:
  • Auswahl des Bilderordners innerhalb des upload-Verzeichnisses des Mandanten
  • Verwendung von Bildern auch in Unterordnern
  • Automatisches skalieren der Bilder auf vorgegebene Größenangaben und Cachedauer für skalierte Bilder
  • Sortieren der Bilder
  • Viele Nivo Slider Optionen

INSTALLATION

Die im Modulpackage enthaltenen Dateien/Sourcen sind wie im Folgenden beschrieben zu installieren.
Die Pfade zu den Sourcen (CSS, JS und Templates) können von Projekt zu Projekt unterschiedlich sein und sind bei Bedarf anzupassen.
Bei der Installationsbeschreibung wird davon ausgegangen, dass CONTENIDO in das DocumentRoot-Verzeichnis eines Webservers installiert wurde und dass das Mandantenverzeichnis "cms/" lautet.

1.) Modul
Den Modulordner "mp_nivo_slider" samt aller Inhalte in das Modulverzeichnis des Mandanten "cms/data/modules" kopieren.
Danach sollte man im Backend die Funktion "Module synchronisieren" unter "Style -> Module" ausführen.

2.) Einbinden der JS- und CSS-Dateien
Die JavaScript- und CSS-Dateien des Moduls sind im head-Bereich des Layouts einzubinden:

Beispiel:

Code: Alles auswählen

...
<head>
    <link rel="stylesheet" href="data/modules/mp_nivo_slider/lib/nivo-slider/nivo-slider.css" type="text/css" media="screen" />
    <link rel="stylesheet" href="data/modules/mp_nivo_slider/lib/nivo-slider/themes/contenido/contenido.css" type="text/css" media="screen" />

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js" type="text/javascript"></script>
</head>
...

Hinweise:
Die Nivo Slider JavaScript-Datei ist schon im Modul-Template eingebunden, nicht im head-Bereich. Da muss man nichts machen, aber bei Bedarf kann man das auch in den head-Bereich oder vor dem schließenden body-Tag (</body>) auslagern.

Code: Alles auswählen

...
<script src="data/modules/mp_nivo_slider/lib/nivo-slider/jquery.nivo.slider.pack.js" type="text/javascript"></script>
...
Beim Einbinden der JavaScript-Dateien muss man auf die Reihenfolge acht geben, die sollte wie folgt sein:
- jQuery (jquery.min.js)
- Nivo Slider JavaScript-Datei (jquery.nivo.slider.pack.js)
- JavaScript-Code im Modul-Template, das den Slider initialisiert


TIPPS&TRICKS

Bildergrößen:
Die Proportionen der Bilder, das Verhältnis zwischen Breite und Höhe der Bilder, im gewählten Bilderordner sollten alle gleich sein.
Das Modul rechnet zwar Bilder auf die Angegebenen Bildmaße herunter, aber eine Mischung aus verschiedenen Proportionen (4:3 und 16:9) erzeugt Bilder, die nicht alle die vorhandene Breite und Höhe der Slides füllt.

Anzahl der Thumbnails:
Wenn Anzeige der Thumbnails aktiviert ist, und die Liste der Thumbnails nicht in eine Zeile passen, werden die Thumbnails in mehreren Zeilen dargestellt.

Themes:
Als Standard wird das Theme "contenido" verwendet. Es stehen auch weitere Themes ("bar", "dark", "default" und "light", siehe cms/data/modules/mp_nivo_slider/lib/nivo-slider/themes/) zur Verfügung.
Zum Konfigurieren eines anderen Themes, z. B. bar, folgendes befolgen:
Im head-Bereich die Zeile

Code: Alles auswählen

    <link rel="stylesheet" href="data/modules/mp_nivo_slider/lib/nivo-slider/themes/contenido/contenido.css" type="text/css" media="screen" />
gegen

Code: Alles auswählen

    <link rel="stylesheet" href="data/modules/mp_nivo_slider/lib/nivo-slider/themes/bar/bar.css" type="text/css" media="screen" />
ersetzen.

Im Modultemplate (cms/data/modules/mp_nivo_slider/template/mpNivoSlider.html) die Zeile

Code: Alles auswählen

    <div class="slider-wrapper theme-contenido">
gegen

Code: Alles auswählen

    <div class="slider-wrapper theme-bar">
ersetzen.

Gegebenenfalls CSS-Formate für das neue Theme anpassen/erweitern.

FTP-Upload:
Das Modul liest Bildinformationen aus der Upload Datenbank-Tabelle aus, nicht aus dem Upload Verzeichnis. Wenn Bilder per FTP auf den Server übertragen wurden, sollte das entsprechende Uploadverzeichnis im Backend unter Dateiverwaltung synchronisiert werden, damit die neuen Bilder im Frontend angezeigt werden.

Anzahl der Bilder:
Das Modul ist nicht darauf ausgelegt, eine große Anzahl von Bildern im Slider zu verwalten. Je mehr Bilder angezeigt werden sollen, desto länger dauert die Initialisierung des Sliders.
Maximal 10 Bilder sind ein guter Wert für die obere Grenze.

Verwendung mit anderen JavaScript Frameworks:
Das Nivo Slider Modul basiert auf jQuery und jQuery bietet eigentlich auch die Option "jQuery.noConflict();", um mit anderen JavaScript-Frameworks zusammen zu funktionieren.
Dies klappt nicht in Verbindung mit den Prototype.js Framework, es verursacht Konflikte unter IE und Opera.
Daher ist es ratsam, im Layout nur jQuery einzubinden.

Ausgeben der JavaScript-Sourcen am Ende der Seite:
Idealerweise sollten JavaScript-Dateien am Ende der Seite ausgegeben werden, damit das Laden von JavaScript die initiale Anzeige der Seite nicht allzu sehr verzögert.
Man kann die Nivo Slider JavaScript-Datei auch vor dem schließenden body-Tag (</body>) einbinden. Danach sollte der JavaScript-Code im Modul-Template, das den Nivo-Slider initialisiert, ausgegeben werden.
Um das zu realisieren, kann man die Ausgabe des JavaScript Codes zum Initialisieren des Sliders in einer Variable speichern, um es am Ende der Seite in einem Modul auszugeben. In Smarty kann man z. B. mit "capture" die Ausgabe speichern, um es später auszugeben.


CHANGELOG

2019-11-15 mpNivoSlider Modul 0.4.0 (für CONTENIDO 4.9.x - 4.10.x)
  • change: Quellcode überarbeitet
  • change: Support für PHP < 5.2 entfernt
  • change: Modul-Template in ein Smarty-Template portiert
  • change: Ordner "vendor" in "lib" umbenannt
2013-11-15 mpNivoSlider Modul 0.3.0 (für CONTENIDO 4.9.x)
  • Erste Veröffentlichung des mpNivoSlider Moduls für CONTENIDO 4.9.x

DOWNLOAD

Das Modul könnt ihr vom GitHub Repository herunterladen:
https://github.com/purcaholic/mpNivoSlider

Grüße
xmurrix
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.
Antworten