This is an old revision of the document!
Plugins in die Homepage einbauen
Welche Plugins kann ich auf anderen Webseiten einbauen?
Du möchtest bestimmte Informationen von Admidio auf deiner Vereinsseite oder anderswo anzeigen? Dazu kannst du die Plugins auf der Übersichts-Seite von Admidio nutzen. Es gibt hier für fast jedes Modul ein Plugin, welches sich auch individuell anpassen lässt. Hier kannst du z.B. die nächsten 2 Veranstaltungen oder aktuelle Geburtstage anzeigen. Diese Übersichts-Plugins müssen im Gegensatz zu Modulen aber nicht unbedingt als eigene Seite aufgerufen werden, sondern können als HTML-Schnipsel in andere Webseiten integriert werden.
Wie baue ich Plugins ein ?
Das entsprechende Plugin sollte im Ordner adm_plugins bereits eingerichtet sein.
Plugin in die Admidio-Übersicht einbauen
Prüfe im ersten Schritt auf der Pluginseite die Installationsanleitung. Einige Plugins liefern ein eigenes Installationsscript und integrieren sich damit selbstständig in unser Menü. In diesem Fall sind dann keine weiteren Schritte notwendig.
Andere Plugins können sich mit einem kleinen HTML-Script auf der Übersichtsseite einbinden lassen. Dazu muss das entsprechende Script in die Template-Datei adm_themes/simple/templates/overview.tpl eingebunden werden.
Dort sind mehrere DIV-Blöcke hinterlegt und du musst hinter einem existierenden DIV-Block deinen neuen DIV-Block ergänzen. Die DIV-Blöcke sehen so aus:
<div class="admidio-overview-plugin col-sm-6 col-lg-4 col-xl-3" id="admidio-plugin-name"> <div class="card admidio-card"> <div class="card-body"> {load_admidio_plugin plugin="plugin-name" file="plugin-datei-name"} </div> </div> </div>
Ersetze in diesem DIV-Block den plugin-name durch den Namen des Ordners deines Plugins und ersetze plugin-datei-name durch den Dateinamen der das Html-Script beinhaltet.
Willst du zum Beispiel das Plugin adm_plugins/calendar/calendar.php einbinden, so sieht der Code-Block anschließend so aus:
<div class="admidio-overview-plugin col-sm-6 col-lg-4 col-xl-3" id="admidio-plugin-calendar"> <div class="card admidio-card"> <div class="card-body"> {load_admidio_plugin plugin="calendar" file="index.php"} </div> </div> </div>
Anschließend kannst du die Übersichtsseite neu laden und dein Plugin sollte sichtbar sein.
Plugin außerhalb von Admidio-Seiten einbauen
Du kannst die Plugins in der Regel auch außerhalb der Admidio-Seiten nutzen und in deine eigenen HTML/PHP-Seiten einbinden. Allerdings sind hier ein paar zusätzliche Schritte notwendig.
Plugin als iFrame einbauen
Die einfachste und empfohlene Möglichkeit Plugins der Übersichts-Seite in eine andere Webseite zu integrieren ist diese als iFrame in den HTML-Code der anderen Webseite einzubauen. Dazu kannst du die nachfolgende HTML-Code genau an der Stelle platzieren an der du das Plugin anzeigen möchtest:
<iframe src="admidio/adm_plugins/#Ordner-des-konkreten-Plugins#/#Startdatei-des-Plugins#"></iframe>
Die konkrete Implementation für das Login-Plugin sähe dann so aus:
<iframe src="admidio/adm_plugins/login_form/index.php"></iframe>
Die Größe, Rahmen und Abstände des Plugins kannst du dann ganz einfach für CSS festlegen, was dann so aussehen könnte:
iframe { width: 80%; height: 600px; border: 1px solid #ccc; }
Jetzt kann du deine Webseite neu aufrufen und das entsprechende Plugin wird nun angezeigt
Plugin als Code-Block in Webseite einbauen
Falls du das Plugin nun in eine reine Html-Seite einbinden möchtest, solltest du die Dateierweiterung der Seite zuerst von html in php umbenennen. Nun kannst du das Modul mit Hilfe von PHP in deine ehemals reine Html-Seite integrieren. Füge nun das Plugin (als Beispiel wird hier das Plugin login_form benutzt) mit einer der folgenden Methoden in deinen Html-Code an der Stelle ein, an der die Ausgabe des Plugins dargestellt werden soll:
1. Zuerst muss die Datei common.php ganz am Anfang deiner PHP-Datei über den Serverpfad eingebunden werden:
<?php include_once($_SERVER['DOCUMENT_ROOT']. '/Pfad-zu-Admidio-Ordner /system/common.php'); ?>
Der Pfad-zu-Admidio-Ordner muss dabei die Ordnerstruktur beinhalten, die man von der Datei gehen muss, in der du das Plugin einbauen willst, bis zum Admidio-Ordner.
Beispiel 1
FTP-Dateipfad in der das Plugin eingebaut werden soll: homepage/index.php FTP-Dateipfad zum Admidio-Ordner homepage/admidio/index.php Include-Befehl: include_once($_SERVER['DOCUMENT_ROOT']. '/admidio/system/common.php');
Beispiel 2
FTP-Dateipfad in der das Plugin eingebaut werden soll: homepage/index.php FTP-Dateipfad zum Admidio-Ordner admidio/index.php Include-Befehl: include_once($_SERVER['DOCUMENT_ROOT']. '/../admidio/system/common.php');
2. Danach folgt der Einbau der Plugins an der gewünschten Stellen:
<?php include($_SERVER['DOCUMENT_ROOT']. '/Pfad-zu-Admidio-Ordner /adm_plugins/login_form/index.php'); ?>
3. Haben die vorherigen Varianten nicht zum Erfolg geführt kannst du die Plugins auch direkt über eine URL einbinden. Allerdings wird bei dieser Variante die common.php für jedes Plugin wiederholt abgearbeitet, was der Performance des Webservers nicht gerade dienlich ist.
<?php include('http://www.example.org/Pfad-zu-Admidio /adm_plugins/login_form/index.php'); ?>
4. Besitzt das Plugin eine CSS Datei so muss du diese auch in die Webseite integrieren. Dies muss zum einen innerhalb Admidio's in der my_header.php des ausgewählten Themeordners geschehen, als auch im Header deiner eigenen Seiten, falls du auch dort das Plugin anzeigen möchtest.
<link rel="stylesheet" type="text/css" href="http://www.example.org/Pfad-zu-Admidio /adm_plugins/login_form/login_form.css" />
Wo kann ich Plugins konfigurieren ?
Konfigurieren kannst du die meisten Plugins über eine config.php Datei. Dazu wird meistens eine config_sample.php Datei ausgeliefert, welche sich im Ordner des Plugins befinden sollte. Diese Datei kannst du dann einfach in config.php umbenennen. Hier stehen einige Variablen mit Default-Werten zur Verfügung. Diese kannst du nach euren Bedürfnissen anpassen.
Besitzt das Plugin eine eigene CSS Datei, kann über diese das Layout des Plugins angepasst werden.
Bei einem Update des Plugins brauchen und sollten diese beiden Dateien nicht überschrieben werden. Sind durch das Update neue Einstellungen oder CSS-Einstellungen hinzugekommen, so können die neuen Variablen bzw. CSS-Einstellungen, aus der config_sample.php in die bisherige Dateien (config.php und pluginname.css) des Plugins kopiert und die gewünschten Werte eingesetzt werden.
Ein Beispiel für eine Integration von mehreren Plugins in einer Seitenleiste siehst du auf diesem Screenshot im hervorgehobenen Bereich:
Wie aktualisiere ich ein Plugin ?
Steht ein Update an, sei es wegen einer Fehlerbehebung, einer neuen Funktion oder aufgrund einer Inkompatiblität zur aktuellen Admidio-Version, so kann einfach der Ordner des entsprechenden Plugins ausgetauscht werden. Lade dir dazu die aktuelle Version aus dem Pluginbereich herunter und ersetze den vorhandenen Pluginordner durch den neuen Ordner aus der Zip-Datei. Besonderheiten beim Update werden in der readme.txt im Pluginordner erwähnt.
