26.11.2015 11:01
Wir haben mit der Entwicklung der Version 2.1.0 angefangen und sind gerade beim Plugin Manager. Dieser wird, auch wenn ich das jetzt selbst sage, einfach genial und genial einfach.
Wir haben bereits die Software für das Repository und einen großen Teil des Backends:

Repository und Backend arbeiten durch Plugin-Beschreibungs-Dateien im XML-Format zusammen:
Für die Plugin-Entwickler unter euch: eure Plugins brauchen keine eigene install.php und (un)install.sql mehr, diese werden vollständig von den XML-Dateien abgelöst. Die Plugins werden als Ordner und Dateien im Repository so abgelegt, wie auch in /drugcms/plugins/. Einziger Unterschied ist, dass es einen zusätzlichen Unterordner "modules" geben kann, mit darin je Modul die Paket-Export-Datei aus drugCMS. Die plugin.xml Datei muss direkt im Plugin-Ordner liegen.
Die mit den Plugins ausgelieferten Modul-Pakete können auf Knopfdruck für den aktuellen Mandanten installiert werden (siehe Screenshot oben) und werden bei der Deinstallation des Plugins automatisch für alle Mandanten entfernt.
Durch die direkte Anbindung am Repository kann der Plugin Manager Plugins eigenständig herunterladen, also müssen diese nicht zuvor vom Anwender auf seinen Server hochgeladen werden. Dieses Herunterladen erfolgt wenn möglich als ZIP-Datei, diese wird im Repository automatisch generiert und im Plugin Manager automatisch entpackt. Sollte eine der beiden Server keine ZIP-Funktionalität haben, wird vom Plugin Manager eine Liste der Ordner und Dateien angefordert und diese Dateien dann einzeln heruntergeladen.
Es wird ein allgemeines Repository auf http://plugins.drugcms.org geben, welches wir betreiben und in dem Plugin-Entwickler ihre Plugins kostenlos anbieten können (per Mail an plugins@drugcms.org einreichen). Zusätzlich gibt es im Plugin Manager die Möglichkeit, weitere Repositories einzutragen (auch mit https und/oder Login/Kennwort). Damit Entwickler und Agenturen ihr eigenes, privates Repository betreiben können, werden wir die Software hierfür zeitgleich zu drugCMS 2.1.0 als Open Source kostenlos veröffentlichen (vorher auf Github, Adresse folgt).
Wir, das Team von drugCMS, wünschen viel Spaß und Erfolg bei der Entwicklung von Plugins für drugCMS ab Version 2.1.0!
Gruß
René
Wir haben bereits die Software für das Repository und einen großen Teil des Backends:

Repository und Backend arbeiten durch Plugin-Beschreibungs-Dateien im XML-Format zusammen:
- Code: Alles auswählen
- <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
- <plugin>
- <general>
- <name><![CDATA[]]></name>
- <descriptions>
- <!-- multiple <action> entries allowed, an entry with lang="en_US" must be specified -->
- <description lang="en_US"><![CDATA[]]></description>
- <description lang="de_DE"><![CDATA[]]></description>
- </descriptions>
- <tags>
- <!-- multiple <tag> entries allowed -->
- <tag><![CDATA[]]></tag>
- </tags>
- <author><![CDATA[]]></author>
- <version><![CDATA[]]></version>
- <copyright><![CDATA[]]></copyright>
- <mail><![CDATA[]]></mail>
- <website><![CDATA[]]></website>
- </general>
- <requirements>
- <php><![CDATA[]]></php>
- <drugcms><![CDATA[]]></drugcms>
- </requirements>
- <dependencies>
- <!-- multiple <plugin> entries allowed -->
- <plugin>
- <name><![CDATA[]]></name>
- <version><![CDATA[]]></version>
- </plugin>
- </dependencies>
- <drugcms> <!-- this section contains the db table entries -->
- <areas>
- <!-- multiple <area> entries allowed -->
- <area>
- <parent><![CDATA[]]></parent>
- <name><![CDATA[]]></name>
- <relevant><![CDATA[]]></relevant>
- <online><![CDATA[]]></online>
- <menuless><![CDATA[]]></menuless>
- </area>
- </areas>
- <actions>
- <!-- multiple <action> entries allowed -->
- <action>
- <area><![CDATA[]]></area>
- <alt_name><![CDATA[]]></alt_name>
- <name><![CDATA[]]></name>
- <code><![CDATA[]]></code>
- <location><![CDATA[]]></location>
- <relevant><![CDATA[]]></relevant>
- </action>
- </actions>
- <files>
- <!-- multiple <file> entries allowed -->
- <file>
- <area><![CDATA[]]></area>
- <filename><![CDATA[]]></filename>
- <filetype><![CDATA[]]></filetype>
- </file>
- </files>
- <frame_files>
- <!-- multiple <frame_file> entries allowed -->
- <frame_file>
- <area><![CDATA[]]></area>
- <frame_id><![CDATA[]]></frame_id>
- <file><![CDATA[]]></file>
- </frame_file>
- </frame_files>
- <nav_main>
- <location><![CDATA[]]></location>
- </nav_main>
- <nav_subs>
- <!-- multiple <nav_sub> entries allowed -->
- <nav_sub>
- <nav_main><![CDATA[]]></nav_main>
- <area><![CDATA[]]></area>
- <level><![CDATA[]]></level>
- <location><![CDATA[]]></location>
- <online><![CDATA[]]></online>
- </nav_sub>
- </nav_subs>
- </drugcms>
- <modules>
- <!-- multiple <module> entries allowed -->
- <module name=""><![CDATA[]]></module>
- </modules>
- <!-- Delete the following database tables on deleting the plugin -->
- <!-- !PREFIX! is the drugcms database prefix set at setup, use an asterisk (*) for multiple chars -->
- <!-- Example: !PREFIX!_my_plugin_* deletes tables drugcms_my_plugin_test and drugcms_my_plugin_probe -->
- <dbtables>
- <!-- multiple <db-delete> entries allowed -->
- <dbtable><![CDATA[]]></dbtable>
- </dbtables>
- </plugin>
Für die Plugin-Entwickler unter euch: eure Plugins brauchen keine eigene install.php und (un)install.sql mehr, diese werden vollständig von den XML-Dateien abgelöst. Die Plugins werden als Ordner und Dateien im Repository so abgelegt, wie auch in /drugcms/plugins/. Einziger Unterschied ist, dass es einen zusätzlichen Unterordner "modules" geben kann, mit darin je Modul die Paket-Export-Datei aus drugCMS. Die plugin.xml Datei muss direkt im Plugin-Ordner liegen.
Die mit den Plugins ausgelieferten Modul-Pakete können auf Knopfdruck für den aktuellen Mandanten installiert werden (siehe Screenshot oben) und werden bei der Deinstallation des Plugins automatisch für alle Mandanten entfernt.
Durch die direkte Anbindung am Repository kann der Plugin Manager Plugins eigenständig herunterladen, also müssen diese nicht zuvor vom Anwender auf seinen Server hochgeladen werden. Dieses Herunterladen erfolgt wenn möglich als ZIP-Datei, diese wird im Repository automatisch generiert und im Plugin Manager automatisch entpackt. Sollte eine der beiden Server keine ZIP-Funktionalität haben, wird vom Plugin Manager eine Liste der Ordner und Dateien angefordert und diese Dateien dann einzeln heruntergeladen.
Es wird ein allgemeines Repository auf http://plugins.drugcms.org geben, welches wir betreiben und in dem Plugin-Entwickler ihre Plugins kostenlos anbieten können (per Mail an plugins@drugcms.org einreichen). Zusätzlich gibt es im Plugin Manager die Möglichkeit, weitere Repositories einzutragen (auch mit https und/oder Login/Kennwort). Damit Entwickler und Agenturen ihr eigenes, privates Repository betreiben können, werden wir die Software hierfür zeitgleich zu drugCMS 2.1.0 als Open Source kostenlos veröffentlichen (vorher auf Github, Adresse folgt).
Wir, das Team von drugCMS, wünschen viel Spaß und Erfolg bei der Entwicklung von Plugins für drugCMS ab Version 2.1.0!
Gruß
René
Tradition ist die Bremse des Fortschritts.
Solange besser möglich ist, ist gut nicht gut genug.
Webseiten-und-so.de | Spider IT Deutschland | XING | Kaffee spendieren (PayPal)