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.2    Erweiterung im JED veröffentlichen Zur vorigen ÜberschriftZur nächsten Überschrift

Haben Sie Ihre Erweiterung auf mehreren Joomla!-Installationen mit verschiedenen Konfigurationen gründlich getestet, steht nichts im Wege, die Software der Community zur Verfügung zu stellen. Das geht verhältnismäßig unkompliziert über das Joomla! Extensions Directory unter http://extensions.joomla.org, aus dem Sie sich bereits für die Erweiterung Ihrer Website bedienten.

Tipp: JED-Konformität mit JEDchecker prüfen

Bevor Sie Ihre Erweiterung im Joomla! Extensions Directory veröffentlichen, hilft ein kleines Tool bei der Sicherstellung der Konformität Ihres Werks. Der JEDchecker prüft das Vorhandensein aller index.html-Dateien, des defined('JEXEC')-Notausgangs, aller Doc-Blocks. Außerdem spürt er Quellcodemaskierung per Base64-Codierung und die überflüssigen Änderungen des PHP-Error-Levels auf, da Joomla! diese Einstellung zentral steuert.

Sie installieren JEDchecker wie eine gewöhnliche Erweiterung in eine Testinstanz von Joomla! und rufen über KomponentenJEDchecker ein Formular mit einem Upload-Button auf. Hier geben Sie Ihr Erweiterungs-ZIP-Paket an, klicken auf unzip, dann auf Check und erhalten entweder Korrekturhinweise oder die beruhigende Meldung: Congrats! Everything seems to be fine with that rule!

Erst wenn JEDchecker grünes Licht gibt, ist Ihre Erweiterung bereit zum Upload ins Joomla! Extensions Directory.

Abbildung 30.2    Erst wenn JEDchecker grünes Licht gibt, ist Ihre Erweiterung bereit zum Upload ins Joomla! Extensions Directory.

Erweiterung JEDchecker
JED-Kategorie Miscellaneous • Developer
Download https://compojoom.com/downloads/official-releases-stable/jedchecker
Zweck kleines Tool zur Prüfung der JED-Konformität Ihrer Erweiterungen

Um eine Erweiterung zu veröffentlichen, benötigen Sie eine Website, auf der Sie das Erweiterungspaket zum Download anbieten, und ein Konto im Joomla! Extensions Directory.

  1. Besuchen Sie das Joomla! Extensions Directory unter http://extensions.joomla.org, und klicken Sie auf den Button Register in der oberen rechten Ecke.

  2. Füllen Sie das Formular mit Name, User name, Password und Developer Name aus, und klicken Sie auf Save. Der Developer name erscheint übrigens im Listing Ihrer Erweiterung.

  3. Sie können sich sofort einloggen, eine Double-Opt-in-Bestätigung ist nicht erforderlich. Klicken Sie nach der Anmeldung auf Ihrer Profile-Seite auf den Link Submit extension oben rechts.

  4. Nehmen Sie sich nun etwas Zeit, das Add extension-Formular auszufüllen. Legen Sie besonders viel Wert auf eine aussagekräftige Beschreibung und ein repräsentatives Bild, am besten einen Screenshot mit erklärenden Features.

    Obere Hälfte des »Add extension«-Formulars mit Name, Beschreibung und Kategorisierung Ihrer Erweiterung sowie Datei-Upload (zur Prüfung durch das JED-Team) und Dokumentations- und Download-Links

    Abbildung 30.3    Obere Hälfte des »Add extension«-Formulars mit Name, Beschreibung und Kategorisierung Ihrer Erweiterung sowie Datei-Upload (zur Prüfung durch das JED-Team) und Dokumentations- und Download-Links

    • Extension name: Name Ihrer Erweiterung

    • Version: aktuelle Versionsnummer

    • Description: Ausführliche Beschreibung Ihrer Erweiterung auf Englisch. Beachten Sie, dass der erste Satz auch in Kategorieübersichten und Suchergebnislisten erscheint, wenn die Interessenten mit Maus über Ihre Erweiterung fahren (siehe Abbildung 30.4).

      Legen Sie besonderen Wert auf den ersten Satz der Beschreibung, der auch in Erweiterungslisten erscheint, wenn Interessenten mit der Maus über Ihre Erweiterungskachel fahren.

      Abbildung 30.4    Legen Sie besonderen Wert auf den ersten Satz der Beschreibung, der auch in Erweiterungslisten erscheint, wenn Interessenten mit der Maus über Ihre Erweiterungskachel fahren.

    • Category: Wählen Sie aus der langen Liste die für Ihre Erweiterung ideale Kategorie. Achtung: Eine Änderung der Kategorie ist nachträglich nicht möglich, höchstens durch eine persönliche Supportanfrage beim JED-Team. Suchen Sie die Kategorie deshalb mit Bedacht aus.

    • Tags: Markieren Sie Ihre Erweiterung über bis zu fünf Schlagwörter, indem Sie in das Tags-Feld klicken und die ersten Buchstaben der wichtigsten Features eingeben. Das Formular unterbreitet Ihnen dann zu beherzigende Vorschläge für eine bessere Auffindbarkeit der Erweiterung.

    • Extensions File: Laden Sie hier die aktuelle Version des Erweiterungspakets hoch, damit das JED-Team einen Blick darauf werfen kann und die Erweiterung schnellstmöglich freigibt.

    • Alternative language descriptions: Möglichkeit zum Hinterlegen anderssprachiger Beschreibungstexte. Das Feature wird allerdings von den wenigsten Erweiterungen genutzt, am wichtigsten ist Ihr englischer Text.

    • Links: Kopieren Sie in diese Felder die URLs zu Webseiten, auf denen Sie Ihre Erweiterung anpreisen. Besonders wichtig: Der Download-, Documentation- und Demo-Link. Die meisten Joomla!-Webmaster sehen eine Erweiterung gerne in Aktion, bevor sie sich zum Download und zur Installation entscheiden (Beispieldemo: https://joomla-handbuch.com/en/downloads/jh-image-popup/demo).

      Untere Hälfte des »Add extensions«-Formulars mit Kategorisierung Ihrer Erweiterung und Bilder-Uploads

      Abbildung 30.5    Untere Hälfte des »Add extensions«-Formulars mit Kategorisierung Ihrer Erweiterung und Bilder-Uploads

    • Bereich Joomla integration options (Download type, Download URL): Diese Felder dienen dem direkten Download, falls Ihre Erweiterung innerhalb des Erweiterungsmanagers (Reiter Aus Webkatalog installieren) installierbar sein soll. Eine komfortable Option für Joomla!-Webmaster, da sie Ihre Website nicht besuchen müssen. Ignorieren Sie die Felder, falls Sie Download-Interessenten aus Marketinggründen auf Ihre Website locken möchten.

    • License: Im Zweifelsfall wählen Sie GPLv2 or later, das ist die Lizenz, die auch für alle Quelltextdateien empfohlen wird.

    • Related Free/Paid JED ID: Falls Ihre Erweiterung als kostenlose und Bezahlversion existiert, verlinken Sie beide Uploads miteinander.

    • Extension includes: Setzen Sie alle Häkchen bei den Erweiterungstypen, die im ZIP-Archiv mitgeliefert werden.

    • Compatibility: Markieren Sie hier, mit welchen Joomla!-Versionen Ihre Erweiterung kompatibel ist. Mitte 2015 hat das JED die Joomla!-2.5-Unterstützung für Erweiterungen beendet, Sie können derzeit also nur 3 wählen.

    • Uses updater: Setzen Sie hier ein Häkchen, falls Sie den halb automatischen Aktualisierungsmechanismus von Joomla! per Update-Server einsetzen.

    • Download Type: Wählen Sie, ob es sich um eine kostenlose (Free download) oder -pflichtige (Paid download) Erweiterung handelt. Die Information erscheint auch auf der Kachel Ihrer Erweiterung, wenn sie über Kategorien oder die JED-Suche dargestellt wird. Free ist für viele Webmaster ein wichtiges Kriterium.

    • Video, Logo, Images: Befüllen Sie diese Formularfelder mit einem Video und Bildern, um Ihre Erweiterung zu demonstrieren. Während Videos unüblich sind, ist das Logo am wichtigsten. Es erscheint nicht nur im Bühnenbereich der Detailansicht der Erweiterung, sondern auch in der Kachel in Erweiterungenlisten. Zusätzliche Bilder stellen Sie unter Images ein, diese sind dann in der Bühne der Detailansicht über Buttons erreichbar.

    • Remote Listing Administration: Eine Möglichkeit, alle in diesem Formular ausgefüllten Felder über einen automatischen Mechanismus befüllen zu lassen – interessant für professionelle Entwickler mit mehreren im Angebot befindlichen Erweiterungen.

  5. Klicken Sie auf Save, und gedulden Sie sich einige Stunden. Abhängig von der Komplexität Ihrer Erweiterung prüfen Mitglieder des JED-Teams die Richtigkeit des Eintrags und die Funktionsfähigkeit der Software.

Für eine erfolgreiche Aufnahme ins Joomla! Extensions Directory gibt es eine Reihe von Bedingungen, die Sie im Detail unter http://tinyurl.com/jh-jed-bedingungen finden. Die wichtigsten Gründe für eine Aufnahmeverweigerung:

  • Es handelt sich um ein Template oder eine Sprachdatei.

  • Die Dokumentations-, Demo- und Download-Links funktionieren nicht.

  • Der Erweiterungsname ist identisch mit dem einer anderen Erweiterung.

  • Das Wort »Joomla« ist Bestandteil des Erweiterungsnamens, erlaubt ist allerdings die Namensergänzung »for Joomla«.

  • Die Erweiterung wird nicht über eine GPL-ähnliche Lizenz vertrieben.

  • Der Quellcode ist verschlüsselt.

  • Die Erweiterung befindet sich auf der Vulnerable Extensions List – siehe Abschnitt 22.6, »Vulnerable Extensions List kennen«.

  • Nach der Installation wirft die Erweiterung Fehler.

Das sind im Grunde alles nachvollziehbare Voraussetzungen, bedenkt man den Open-Source-Charakter von Joomla! und aller Erweiterungen. Wenn Sie alle Tipps, insbesondere auch die zur Absicherung der Erweiterung beherzigen (siehe Kasten »Achtung: Ratschläge zur Absicherung Ihrer Erweiterung«), sollte der Veröffentlichung nichts im Wege stehen. Wundern Sie sich übrigens nicht, wenn der Score Ihres Beitrags zur Community in den ersten Wochen ungerechtfertigt niedrig erscheint. Neue Erweiterungen erhalten von Grund auf einen Malus; eine realistische Score-Berechnung erhalten Sie erst, nachdem mindestens fünf Reviews abgegeben wurden.

Achtung: Ratschläge zur Absicherung Ihrer Erweiterung

Nachlässig programmierte Erweiterungen sind das größte Sicherheitsrisiko in einer Joomla!-Installation. Berücksichtigen Sie diese Ratschläge, damit Ihre Erweiterung nicht auf dem Index (Vulnerable Extensions List) landet. Das Joomla! Extensions Directory weist zudem Erweiterungen zurück, die sich als unsicher herausstellen.

  • Platzieren Sie in jedes Verzeichnis eine index.html-Datei mit dem Inhalt <html><body></body></html>.

  • Beginnen Sie jede PHP-Datei mit der Anweisung defined('_JEXEC') or die;, damit sie nicht außerhalb von Joomla! aufgerufen werden kann und möglicherweise das Einschleusen von Schadcode ermöglicht.

  • Casten Sie den tatsächlich verwendeten Datentyp auf Variablen, die flexible Werte enthalten können, z.  B. (int) ID, damit Sie mit sicheren Variableninhalten rechnen.

  • Beziehen Sie Daten über $jinput = JFactory::getApplication()->input; gefolgt von $jinput->post->get('Variable', 'Standardwert', 'Filter'); (statt post ist auch get und server möglich) anstelle von $_REQUEST, $_GET oder $_POST. Setzen Sie dabei im Filter so spezifische Datentypen wie möglich, z.  B. INT, WORD, STRING, PATH oder USERNAME.

  • Parsen Sie Zeichenketten vor ihrer Verwendung in Datenbankabfragen, das Datenbankobjekt von Joomla! stellt dazu die Funktion quote() bereit. Beispiel: $database = JFactory::getDBO(); […] $db->quote($zeichenkette).

  • Filtern Sie Variablen und URL-Parameter per JFactory::getApplication()-> input->get('Variablenname', 'Standardwert', 'Filter'), siehe auch http://tinyurl.com/jh-jinput.

  • Vermeiden Sie filter="raw" in JForm-Feldern, setzen Sie stattdessen spezifische Filter wie beispielsweise filter="safehtml" ein.

  • Setzen Sie in jedem JForm-Formular das Token mit JHtml::_('form.token').

 


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