Ermöglicht das Gruppieren von Media-Manager-Typen und stellt eine Frontend-API (PictureTag) bereit. Das AddOn erweitert den Media Manager von REDAXO. Es ist mit dem Media Manager Plus möglich, verschiedene Breakpoints für ein Bild zu hinterlegen. Somit besteht die Möglichkeit, verschiedene Auflösungen von Bildern zur Verfügung zu stellen.
- Erweiterung um Gruppen und deren Verwaltung
- Erweiterung um Breakpoints
- Zentrale Ausgabefunktion
- Über Installer laden oder ZIP-Datei im AddOn-Ordner entpacken, der Ordner muss
media_manager_plus
heißen. - AddOn installieren und aktivieren
Sorgt auch gleichzeitig dafür das alle Gruppen Breakpoints des Typs gelöscht werden, jedoch nicht für alt Einträge die bis vor der Version 2.3.0 angelegt wurden.
Ab Version 2.3.0 werden beim nachträglichen anlegen von Breakpoints, die entsprechenden Einträge für alle bestehenden Gruppen angelegt.
Es besteht die Möglichkeit, über die statischen PHP-Methoden die Ausgaben automatisch im passenden Format zurückzugeben.
Liefert einen komplett fertigen picture Tag aus, inkl. der source Angaben, jeweiligen Pixel-Ratio-Größen sowie der Breakpoints.
echo media_manager_plus_frontend::generatePictureTag('bildTyp', 'image.jpg');
oder alternativ:
echo mmp::generatePictureTag('bildTyp', 'image.jpg');
Für die Verwendung des LazyLoad (kleines bild anzeigen => großes Bild nachträglich laden) wird eine Javascript Library benötigt. Dies kann mit nachfolgendem Code eingebunden werden. Das Javascript wird mit dem Tag Attribut "defer" ausgegeben.
echo mmp::getLazyLoad();
Um je nach Breakpoint ein anders Bild auszugeben, kann bei dem aufruf von "generatePictureTag" ein dritter Parameter vom Typ Array übergeben werden.
Dieses Beispiel sorgt dafür, das bei dem Breakpoint XL das Bild anderes_image.jpg ausgegeben wird.
echo mmp::generatePictureTag('bildTyp', 'image.jpg', ['XL' => 'anderes_image.jpg']);
Für die eigene Anpassung von Ausgaben, existieren folgende Extension Points
MMP_BEFORE_PICTURETAG
MMP_AFTER_PICTURETAG
MMP_IMG_CLASS
MMP_IMGTAG
MMP_IMG_ALT
Ermöglicht vor dem Picture Tag eigene Ausgaben zu gestalten. Es stehen in dem EP folgende Angaben zur Verfügung:
mediatype
filename
filenamesByBreakpoint
lazyload
Ermöglicht nach dem Picture Tag eigene Ausgaben zu gestalten. Es stehen die gleichen Parameter zur Verfügung wie bei MMP_BEFORE_PICTURETAG
Setzen von eigenen CSS Klassen auf dem IMG Tag. Dies ist wie folgt möglich:
rex_extension::register('MMP_IMG_CLASS', function(rex_extension_point $ep) {
$classes = $ep->getSubject();
$classes = array_merge(beispiel::getClass(), $classes);
return $classes;
}, rex_extension::LATE);
class beispiel {
private static $bildClasses = [];
public static function getClass() {
return self::$bildClasses;
}
public static function setClass($klassen) {
self::$bidClasses = $klassen;
}
}
beispiel::setClass(['class-1', 'class-2', 'class-3'])
media_manager_plus_frontend::generatePictureTag('eigenerTyp', 'bild.jpg');
// Für nachfolgende Aufrufe ohne eigener Class, einfach danach den Standard festlegen
beispiel::setClass(['standard_klasse']);
ermöglicht eine eigene Ausgabe von dem tag "IMG". Es stehen die Parameter mediatype
, filename
, filenamesByBreakpoint
und lazyload
zur verfügung.
über diesen Endpoint kann der wert des alt attributes durch einen eigenen Wert überschrieben werden.
Das FOR-AddOn gestaltet die URL Ausgaben benutzerfreundlich
Du hast einen Fehler gefunden oder ein nettes Feature was du gerne hättest? Lege ein Issue an
Friends Of REDAXO
Projekt-Lead
vorheriger Lead: Thomas Kaegi
Readme: Markus Schnieder