Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.
 
Inhaltsverzeichnis
Vorwort
Teil I Grundlagen
1 Einleitung
2 Testumgebung einrichten
3 Live-Umgebung einrichten
4 Website planen
Teil II Joomla! benutzen
5 Website-Frontend kennenlernen
6 Administrations-Backend bedienen
7 Content verwalten
8 Contentpflege konfigurieren
9 Menüs aufbauen
10 Layout und Design anpassen
11 Benutzerverwaltung einrichten
12 Mehrsprachigkeit aktivieren
13 System konfigurieren
Teil III Joomla! erweitern
14 Erweiterungen aktivieren
15 Offizielle Joomla!-Komponenten
16 Empfohlene Erweiterungen
17 Joomla! als Content-Management‐System
18 Joomla! als Community-Plattform
19 Joomla! als Online-Shop
Teil IV Joomla! warten
20 Wartung allgemein
21 Joomla! und Content deployen
22 Sicherheit ausbauen
23 Performance- und Suchmaschinenoptimierung
24 Notfallmaßnahmen
Teil V Joomla!-Erweiterungen entwickeln
25 Grundlagen zur Erweiterungsentwicklung
26 Templates entwickeln
27 Plugins entwickeln
28 Module entwickeln
29 Komponenten entwickeln
30 Erweiterungen veröffentlichen
Stichwortverzeichnis

Jetzt Buch bestellen
Ihre Meinung?

Spacer
<< zurück
Joomla! 3 von Richard Eisenmenger
Das umfassende Handbuch
Buch: Joomla! 3

Joomla! 3
Pfeil 30 Erweiterungen veröffentlichen
Pfeil 30.1 Einrichten eines Update-Servers
Pfeil 30.1.1 XML-Manifest um Update-Server erweitern
Pfeil 30.1.2 Update-XML-Datei erzeugen
Pfeil 30.2 Erweiterung im JED veröffentlichen
 
Zum Seitenanfang

30    Erweiterungen veröffentlichen Zur vorigen ÜberschriftZur nächsten Überschrift

Über das Joomla! Extensions Directory stellen Sie Ihre selbst programmierte Erweiterung der Community als kostenlose oder Bezahlversion zur Verfügung. Vorher richten Sie einen Update-Server ein, der die weltweiten Installationen Ihrer Erweiterung auf dem aktuellen Stand hält.

Der Ausflug in die Erweiterungsentwicklung von Joomla! endet mit einem Blick in die Zukunft. Wie veröffentlichen Sie Ihre Erweiterung im Joomla! Extensions Directory, und wie halten Sie einmal veröffentlichte Plugins, Module oder Komponenten in Joomla!-Installationen auf der ganzen Welt auf dem aktuellen Stand? Der langjährigen Marktpräsenz vom Joomla! ist es zu verdanken, dass Sie die Aktualisierungsmechanismen mit wenigen Handgriffen in bestehende Erweiterungspakete integrieren und eine offizielle Veröffentlichung bemerkenswert unkompliziert ist.

Begriff Erklärung
Update-Server Über das Internet erreichbarer Server, auf dem Ihre Erweiterungspakete und die Pakete und Updates beschreibenden XML-Dateien bereitliegen. Dafür setzen Sie beispielsweise Ihren Joomla!- oder jeden beliebigen anderen Webserver ein.
Demo Webseite, die die Funktionalität einer Erweiterung präsentiert, damit sich Joomla!-Webmaster ein klares Bild davon machen können. Erweiterungen mit repräsentativen Demos haben eine deutlich höhere Wahrscheinlichkeit, heruntergeladen zu werden.

Tabelle 30.1    Die wichtigsten Begriffe zur Erweiterungsveröffentlichung und ‐aktualisierung

 
Zum Seitenanfang

30.1    Einrichten eines Update-Servers Zur vorigen ÜberschriftZur nächsten Überschrift

Im Laufe der Lebenszeit einer Joomla!-Erweiterung erfährt sie unregelmäßige Aktualisierungen, Updates aufgrund von Fehlerbeseitigungen oder Feature-Erweiterungen. Es ist Joomla!-Webmastern natürlich nicht zuzumuten, zwei Dutzend Plugins und Komponenten im Auge zu behalten und die Websites der Entwickler zu besuchen, um nachzusehen, ob es eine neue Version gibt. Deshalb integriert Joomla! einen Update-Mechanismus, der automatisch prüft, ob Aktualisierungen vorhanden sind, und diese entweder im Kontrollzentrum oder unter ErweiterungenVerwalten • Seitenleiste Aktualisieren anzeigt. Auf Entwicklerseite lässt sich dieser Mechanismus über zwei XML-Konfigurationen sehr einfach nutzen:

  • Ergänzung des XML-Manifests der Erweiterung um eine Referenz auf den Update-Server – z.  B. Ihren Joomla!-Server

  • spezielle XML-Datei mit einer Historie aller Updates und all ihren Einzelheiten, besonders wichtig: die Versionsnummern

Der Update-Mechanismus von Joomla! beginnt bei der Installation einer Erweiterung, deren XML-Manifest einen Link zum Update-Server enthält, genauer gesagt, zur Update-XML-Datei der betreffenden Erweiterung. Das CMS speichert solche Referenzen in der Tabelle #__update_sites, deren Einträge während der Update-Verfügbarkeitsprüfung nacheinander abgeklopft werden (siehe Abbildung 30.1).

Die Tabelle »#__update_sites« enthält alle XML-URLs, die Joomla! während der Update-Verfügbarkeitsprüfung prüft.

Abbildung 30.1    Die Tabelle »#__update_sites« enthält alle XML-URLs, die Joomla! während der Update-Verfügbarkeitsprüfung prüft.

 
Zum Seitenanfang

30.1.1    XML-Manifest um Update-Server erweitern Zur vorigen ÜberschriftZur nächsten Überschrift

Um Ihre Erweiterung update-tauglich zu machen, ergänzen Sie das XML-Manifest im Erweiterungspaket um einen neuen Block <updateservers>:

<?xml version="1.0" encoding="utf-8"?>
<extension version="3.0"
[...]
</config>
<updateservers>
<server type="extension" priority="2" name="Ihre Update Site">
https://IhrDomainName.de/files/ihre-erweiterung-update.xml</server>

</updateservers>
</extension>

Listing 30.1    XML-Manifest Ihrer Erweiterung: Ergänzung eines auf den Update-Server zeigenden XML-Blocks

Innerhalb des neuen <updateservers>-Blocks ergänzen Sie das Tag <server>, das den exakten Pfad zu der XML-Datei enthält, die Joomla! bei jeder Aktualisierungsprüfung abruft, um nachzusehen, ob eine neue Version verfügbar ist. type="extension" kennzeichnet diesen Servereintrag als Anlaufstelle für eine Erweiterung (im Gegensatz zu "collection" für ein Update, das aus mehreren Erweiterungen besteht). Als priority wählen Sie 2 für eine mittelhohe Wichtigkeit des Updates. Die hinter name angegebene Zeichenkette erscheint im Administrations-Backend, wenn Joomla! das Vorhandensein eines Updates ankündigt.

Einmal im Erweiterungspaket vorhanden, ist eine weitere Bearbeitung dieses XML-Blocks nicht mehr notwendig, sämtliche Update-Ankündigungen erfolgen über die neue Update-XML-Datei.

 
Zum Seitenanfang

30.1.2    Update-XML-Datei erzeugen Zur vorigen ÜberschriftZur nächsten Überschrift

Die Update-XML-Datei enthält eine Historie aller Updates Ihrer Erweiterung mit den für die Evaluierung und Durchführung der Aktualisierungen relevanten Informationen.

<?xml version="1.0" encoding="UTF-8"?>
<updates>
<update>
<name>Name der Erweiterung</name>
<description>Beschreibung</description>
<element>exakterinternername</element>
<type>plugin|module|component</type>
<folder>content</folder>
<client>0</client>
<version>0.1.0</version>
<infourl title="Name der Erweiterung">
https://IhrDomainName/en/downloads/ihre-erweiterung</infourl>
<downloads>
<downloadurl type="full" format="zip">https://IhrDomainName.de/
files/erweiterungspaket.zip</downloadurl>
</downloads>
<tags>
<tag>stable</tag>
</tags>
<maintainer>Vorname Nachname</maintainer>
<maintainerurl>http://IhrDomainName.de</maintainerurl>
<section>Updates</section>
<targetplatform name="joomla" version=".*"/>
</update>
</updates>

Listing 30.2    Beispiel einer universellen Update-XML-Datei

Die XML-Datei muss penibel genau justiert sein. Tüfteln Sie so lange an der Datei, bis interne Update-Tests reibungslos ablaufen und Joomla! unter ErweiterungenVerwalten • Seitenleiste Aktualisieren • Button Aktualisierungen kleinste Versionsunterschiede Ihrer Erweiterung meldet. Erst dann veröffentlichen Sie Ihre Erweiterung.

Die Felder im Einzelnen:

  • name: Erweiterungsname, der unter ErweiterungenVerwalten • Seitenleiste Aktualisieren erscheint

  • description: eine optionale kurze Beschreibung

  • element: Programminterner Name der Erweiterung, in der Regel inklusive des Erweiterungstyps, z.  B. com_location. Für Plugins muss dieser Eintrag dem Wert des plugin-Attributs aus dem <files>/<filename>-Element des XML-Manifests entsprechen. Beispiel: <filename plugin="imagepopup">imagepopup.php</filename> resultiert in <element>imagepopup</element>.

  • type: Art der Erweiterung: plugin, module oder component

  • folder: Nur notwendig für Plugins – entspricht der group aus dem XML-Manifest des Plugins und damit gleichzeitig dem /plugins/-Unterverzeichnis, z.  B. wird <extension version="3.1" type="plugin" group="content" method="upgrade"> zu <folder>content</folder>.

  • client: Kennzeichnet, ob das Modul, Plugin oder Template für das Frontend (Wert 0) oder Backend (Wert 1) bestimmt ist.

  • version: Versionsnummer dieses Updates

  • infourl: optionale URL mit Hintergrund- oder Release-Infos zu diesem Update, erscheint ebenfalls im Erweiterungsmanager

  • downloads, downloadurl: URL zum Update-Paket. Über das Attribut type kennzeichnen Sie, dass es sich um ein Komplettpaket handelt (Wert full); format markiert das Dateiformat, in der Regel also zip für ein ZIP-Archiv.

  • tags, tag: Eine Liste von Schlagwörtern, die den Entwicklungsstand der Erweiterung beschreiben. Erlaubt sind dev, alpha, beta, rc (für Release Candidate) oder stable. Für gewöhnlich veröffentlicht man nur fertige Erweiterungen im Status stable im Joomla! Extensions Directory; die übrigen Tags setzen Sie z.  B. für interne Entwicklungs-Updates ein.

  • maintainer, maintainerurl: Name und Website zum Update-Verwalter, in den meisten Fällen ist dieser identisch mit <author> im XML-Manifest.

  • section: veraltetes Feld, das Sie sicherheitshalber auf dem Wert Updates belassen

  • targetplatform: Hier erwähnen Sie die Joomla!-Version, ab der Ihre Erweiterung voll funktionsfähig ist, z.  B. 3.0 oder 3.5. Gibt es keine Einschränkungen, tragen Sie hier .* (Punkt, Stern) ein.

  • php_minimum: Optional und noch nicht weit verbreitet, da erst mit Joomla! 3.2.2 integriert, erlaubt dieses Feld eine Kompatibilitätsprüfung gegen eine bestimmte PHP-Version.

Ein Beispiel für eine Update-XML-Datei finden Sie für das im Rahmen dieses Handbuchs erstellte JH-Image-Popup-Plugin unter https://joomla-handbuch.com/files/jhimagepopup-update.xml. Hier erkennen Sie anhand der vielen <update>-Blöcke im globalen <updates>-Block eine kleine Versionshistorie und die für Plugins so wichtigen Tags <folder> und <client>.

 


Ihre Meinung

Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.

<< zurück
 Zum Rheinwerk-Shop
Zum Rheinwerk-Shop: Joomla! 3 Joomla! 3
Jetzt Buch bestellen

 Ihre Meinung?
Wie hat Ihnen das Openbook gefallen?
Ihre Meinung

 Buchempfehlungen
Zum Rheinwerk-Shop: HTML5 und CSS3
HTML5 und CSS3


Zum Rheinwerk-Shop: Schrödinger lernt HTML5, CSS und JavaScript
Schrödinger lernt HTML5, CSS und JavaScript


Zum Rheinwerk-Shop: Einstieg in PHP 7 und MySQL
Einstieg in PHP 7 und MySQL


Zum Rheinwerk-Shop: PHP 7 und MySQL
PHP 7 und MySQL


Zum Rheinwerk-Shop: Erfolgreiche Websites
Erfolgreiche Websites


 Lieferung
Versandkostenfrei bestellen in Deutschland, Österreich und der Schweiz
InfoInfo

 
 


Copyright © Rheinwerk Verlag GmbH 2019
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das Openbook denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt.
Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.

 
Nutzungsbestimmungen | Datenschutz | Impressum

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de

Cookie-Einstellungen ändern