Mit welchen Tools kann ich mich bei der Entwicklung von Joomla unterstützen lassen?


26

Ich bin neu in der Joomla-Entwicklung und möchte wissen, welche Tools und / oder Software mich bei der Entwicklung des Backends und des Frontends einer Joomla-Site unterstützen können. Dies würde auch zukünftige Wartungen und Aktualisierungen in der Zukunft einschließen.


1
Nun, wir möchten diese Seite zu einem Wiki machen, das viele nützliche Tools enthält, die die meisten von uns für Joomla und die allgemeine Entwicklung / Administration verwenden. Wir haben die Antworten nach Kategorien der Tools getrennt. Alle Benutzer sind herzlich eingeladen, Informationen in den Antworten unten hinzuzufügen und zu aktualisieren. Auf die Frage kann in anderen Antworten verwiesen werden, insbesondere für neue Benutzer - und ich denke, es wird ein herzliches Willkommen sein.
FFrewin



Antworten:


17

Entwicklung

Allgemeines

  • Composer
    Composer ist ein Tool für das Abhängigkeitsmanagement in PHP. Sie können damit die Bibliotheken deklarieren, von denen Ihr Projekt abhängt, und diese für Sie verwalten (installieren / aktualisieren).

  • Joomlatools Composer Installer
    Dieses Composer-Plugin installiert Erweiterungen in Ihr Joomla-Setup.

  • FOF2 (Framework on Framework 2)
    FOF ist einFramework für dieschnelle Anwendungsentwicklung, das in Joomla! Es erweitert die Joomla! Plattform, anstatt sie zu ersetzen, mit einer eigenen, gespaltenen und erweiterten Version der MVC-Klassen, die dem vorhandenen Joomla! und bietet HMVC-Funktionen.

  • FOF3 (Framework auf Framework 3) FOF3 verbessert FOF2 / F0F2 und bringt leistungsstarke neue Tools für Joomla 3. wie ein neues dataModel, die Verwendung von Namespaces, DI-Container, das automatische Laden von Klassen für Komponenten und einen Gerüstbauer zum schnellen automatischen Erstellen eines Rahmens für Ihre Komponente und vieles mehr . WARNUNG FOF 3.x ist nicht abwärtskompatibel mit FOF 2.x und 1.x.

    • FOF3-Basic Ein Beispiel vom Typ Hallo Welt für Akeeba FOF3, geschrieben als Entwickler-Exemplar für den Bau eines Joomla! Komponente von Grund auf.
  • Nooku Framework
    Framework zum Erstellen von Joomla-Erweiterungen mit weniger Code.



Erweiterungsgeneratoren

  • generator-joomla-component (Ein Komponentengenerator für Yeoman ) Mit
    generator-joomla-component können Sie schnell und mühelos eine neue Joomla-Komponente mit den empfohlenen MVC-Entwurfsmustern und Codierungsstandards ausstatten.

    Diese schließen ein:

    • Sprachdateien für die Internationalisierung
    • Tabulatoren für Einzüge
    • CamelCase-Variablennotation
    • Richtige MVC-Architektur
    • PHPDocumentor-Stubs für jede Methode sowie Dokumentblöcke auf Seitenebene
    • Verwendet 'über ", weil das ist, was die offizielle Joomla-Bibliothek verwendet
  • generator-joomla-admin-template (Ein Administrator-Vorlagengenerator für Yeoman )
    generator-joomla-admin-template ist ein Yeoman-Generator, mit dem Sie automatisch Joomla-Administrator-Vorlagen für Ihr Backend generieren können.

  • Joomla-Komponentenersteller (Der freie Zugriff ist auf eine Datenbanktabelle beschränkt.) Mit
    Joomla-Komponentenersteller können Sie inwenigenMinuten eine voll funktionsfähige, einbaufertige, benutzerdefinierte Joomla-Komponente erstellen. Dies spart Joomla-Entwicklern täglich Hunderte von Stunden Entwicklungszeit.

  • Component Builder Der
    Component Builder für Joomla ist hochentwickelt und in der Lage, extrem komplexe Komponenten in einem Bruchteil der Zeit zu erstellen.

  • Joomla Module Generator von XDSoft
    Joomla Module Generator von XDSoft vereinfacht den Prozess und spart Zeit beim Entwickeln von Modulen für Joomla. Es erstellt eine Struktur, erstellt alle erforderlichen Verzeichnisse und Dateien und generiert eine gültige XML-Hauptdatei. Als Ergebnis erhalten Sie ein Zip-Paket zur Installation.

  • Joomla Plugin Generator von ExtStore
    Joomla! Plugin Generator von ExtStore generiert ein einfaches leeres Plugin mit den erforderlichen Dateien, damit Sie schnell mit Ihrem neuen Joomla-Plugin beginnen können. Nachdem Sie ein kurzes Formular mit Name, Autor und Beschreibung des Plugins ausgefüllt haben, erhalten Sie ein Zip-Paket, das zur Installation bereitsteht, einschließlich Sprachdateien (en-GB).



Dokumente und Ressourcen


Ich habe einen kostenlosen Modulgenerator entwickelt, der auf meiner Website verfügbar ist. Würde es jemandem etwas ausmachen, wenn ich das hinzufüge?
Lodder

@Lodder Nein, überhaupt nicht.
Rene Korss

15

Umgebungen:

  • Wamp (Windows)
    WampServer ist eine Windows-Webentwicklungsumgebung. Sie können damit Webanwendungen mit Apache2, PHP und einer MySQL-Datenbank erstellen. Daneben können Sie mit PhpMyAdmin Ihre Datenbanken einfach verwalten.

  • MAMP (Mac: Community- und kommerzielle Version)
    MAMP installiert in wenigen Sekunden eine lokale Serverumgebung auf Ihrem Mac OS X-Computer. Es ist kostenlos (Community Edition) und einfach zu installieren. MAMP beeinträchtigt keine vorhandene Apache-Installation, die bereits auf Ihrem System ausgeführt wird. Sie können Apache, PHP und MySQL installieren, ohne ein Skript zu starten oder Konfigurationsdateien ändern zu müssen!

  • Lampe (Linux)

  • Xampp (für alle Plattformen verfügbar)
    XAMPP ist eine völlig kostenlose, einfach zu installierende Apache-Distribution, die MySQL, PHP und Perl enthält. Das XAMPP-Open-Source-Paket wurde so eingerichtet, dass es unglaublich einfach zu installieren und zu verwenden ist.

  • Vagrant
    Vagrant ist ein Tool zum Erstellen kompletter Entwicklungsumgebungen. Mit einem benutzerfreundlichen Workflow und dem Fokus auf Automatisierung reduziert Vagrant die Einrichtungszeit für die Entwicklungsumgebung, erhöht die Entwicklungs- / Produktionsparität und macht die Ausrede "Arbeiten an meiner Maschine" zu einem Relikt der Vergangenheit.

    • Joomlatools Vagrant Box (Virtuelle Maschine mit Lampenstapel )
      Dieses Projekt automatisiert die Einrichtung einer Joomla-Entwicklungsumgebung. Mit einem einzigen Befehl kann ein LAMP-Stack mit allen Funktionen ausgeführt werden, sodass Sie schnell mit der Arbeit an Ihren Joomla-Projekten beginnen können.

  • Oracle VM VirtualBox
    VirtualBox ist ein leistungsstarkes, funktionsreiches Virtualisierungsprodukt für Unternehmen und Privatanwender, das als Open Source Software (GNU GPL) frei verfügbar ist.

    VirtualBox kann auf Windows-, Linux-, Macintosh- und Solaris-Hosts ausgeführt werden und unterstützt eine große Anzahl von Gastbetriebssystemen, einschließlich, aber nicht beschränkt auf Windows (NT 4.0, 2000, XP, Server 2003, Vista, Windows 7, Windows 8), DOS / Windows 3.x, Linux (2.4, 2.6 und 3.x), Solaris und OpenSolaris, OS / 2 und OpenBSD.

  • Ampps (für alle Plattformen verfügbar)
    AMPPS ist ein einfach zu installierender Software-Stack aus Apache, MySQL, PHP, Perl, Python und Softaculous, der auf Desktops und Office-Servern verwendet werden kann.

Joomla3 Systemvoraussetzungen


Ich habe es noch nie benutzt, aber ich fange
fruppel

@ fruppel - Ahh schön. Wenn ich mich recht erinnere, hat hier vor kurzem jemand nach einer virtuellen Maschine gefragt. Bitte zögern Sie nicht, dies mit Empfehlungen zu bearbeiten, die Sie haben. FFrewin schlug dies ein Community Wiki Benutzer neu zu Joomla geworden
Lodder

@FFrewin - Vielleicht wären mehrere Antworten besser. Wenn jeder Abschnitt (Envrionments, Editors, etc) separate Antworten gäbe, könnte der Benutzer möglicherweise eine Beschreibung und Meinung für jeden hinzufügen
Lodder

1
@Lodder: Ok, einverstanden, irgendwann werden wir die Antworten nach Sektionen aufteilen. Im Moment werde ich in der obigen Antwort eine kurze Referenz für 2 DB-Tools hinzufügen.
FFrewin

Dies ist eine ausgezeichnete Ressource und sollte der Ausgangspunkt für jeden sein, der sich für Joomla-Entwicklung interessiert (oder für jeden Web-Entwickler!). Einige davon sind neu für mich und ich werde nachforschen!
Sehr

9

Testen:

Wenn Sie vorhaben, eine erhebliche Menge an PHP- oder JavaScript-Code zu schreiben, sind alle Standard-PHP- und JavaScript-Entwicklungstools hilfreich, unabhängig davon, ob Ihr Code in einer Joomla-Umgebung ausgeführt wird oder nicht.

Auf der PHP-Seite:

  • XDebug : Eine PHP-Erweiterung für Entwickler, mit der Sie zeilenweise durch Ihren Code gehen können, um Fehler zu finden. Von unschätzbarem Wert.
  • phpUnit : Ein Testwerkzeug . Schreiben Sie phpUnit-Tests, um sicherzustellen, dass Ihr Code funktioniert
  • PHPMD : PHP "Mess Detektor". Weist auf einen Code mit schlechter Qualität hin. (Viele bekannte Projekte hätten von Anfang an davon profitieren können).
  • CodeSniffer und die Joomla-Codierungsstandards: Erzwingen eine saubere Codepraxis und vereinfachen das Lesen Ihres Codes für neue Entwickler.

Auf der JavaScript-Seite:

  • Die verschiedenen DevTools-Funktionen des Browsers. Alle gängigen Browser verfügen jetzt über hochwertige Entwicklungswerkzeuge. Firefox bietet neben den eingebauten Dev-Tools auch Firebug als Plugin an, was ebenfalls einen Besuch wert ist.
  • JSHint : Weist auf Code mit schlechter Qualität und mögliche Fehler hin.

Es gibt Unmengen solcher Tools, aber offensichtlich hängt es davon ab, wie ernst Ihre Codierung wird - wenn Sie nur ein paar Dutzend Codezeilen knacken, wird es nicht viel Sinn machen, mit den meisten herumzuspielen über. Wenn Sie jedoch vorhaben, ein Joomla-Plugin in angemessener Größe zu schreiben und es für einige Zeit zu unterstützen, sind die oben genannten Tools für Sie von unschätzbarem Wert, da sie Ihnen beim Schreiben des Plugins helfen.


8

Frontend (Vorlage, Framework etc.):

  • UIKit (Framework)
    UIKit ist erst ein paar Jahre alt, aber sehr beliebt geworden. Es ist ein leichtes und modulares Front-End-Framework für die Entwicklung schneller und leistungsfähiger Webschnittstellen und wird ab Warp 7 für alle Vorlagen von Yootheme verwendet. Der Großteil von Javascript wurde in separate Komponenten verschoben, sodass Sie jede Komponente wann und wo immer laden können wollen.

  • Bootstrap (Framework)
    Bootstrap ist ein äußerst beliebtes, wenn nicht das beliebteste HTML-, CSS- und JS-Framework für die Entwicklung responsiver Websites. Bootstrap macht die Front-End-Webentwicklung schneller und einfacher. Es ist für Leute aller Könnensstufen, Geräte aller Formen und Projekte aller Größen und vor allem Open Source gedacht und wird daher von der Community auf GitHub gehostet, entwickelt und gewartet. Version 2.3.2 (nicht mehr offiziell unterstützt) wird ebenfalls mit Joomla 3.x ausgeliefert und wird für die Standard-Protostar-Vorlage verwendet.

  • Yootheme (Vorlagenanbieter)
    Yootheme ist einer der beliebtesten Joomla-Vorlagenanbieter. Sie erstellen jeden Monat eine neue Vorlage (unter Verwendung ihres Front-End-Frameworks UIKit) mit einem einzigartigen Design.

  • Foundation (Framework)
    Foundation ist eine Familie von reaktionsschnellen Front-End-Frameworks, mit denen sich auf einfache Weise ansprechende Websites, Apps und E-Mails erstellen lassen, die auf jedem Gerät hervorragend aussehen. Foundation ist semantisch, lesbar, flexibel und vollständig anpassbar.
  • Semantic UI (Framework)
    Semantic ist ein Entwicklungsframework, mit dessen Hilfe schöne, reaktionsschnelle Layouts mit menschlichem HTML erstellt werden können.
  • Pure von Yahoo (Reihe kleiner, reaktionsschneller CSS-Module)
    Pure ist als Ausgangspunkt für jede Website oder Web-App gedacht. Pure kümmert sich um alle CSS-Aufgaben, die jede Site benötigt, ohne dass sie wie ein Keks aussieht:

    • Ein reaktionsschnelles Raster, das an Ihre Bedürfnisse angepasst werden kann.
    • Eine solide Basis, die auf Normalize.css aufbaut, um browserübergreifende Kompatibilitätsprobleme zu beheben.
    • Konsistent gestaltete Schaltflächen, die mit und Elementen funktionieren.
    • Stile für vertikale und horizontale Menüs, einschließlich Unterstützung für Dropdown-Menüs.
    • Nützliche Formularausrichtungen, die auf allen Bildschirmgrößen gut aussehen.
    • Verschiedene gängige Tischstile.
    • Ein extrem minimalistischer Look, der sich kinderleicht anpassen lässt.
    • Standardmäßig ansprechbar, mit einer nicht ansprechbaren Option.
    • Extrem kleine Dateigröße: 4,5 KB, minimiert + gzip.

Prost auf die Trennung :). Ich werde gleich anfangen, einige Informationen für diese Frameworks und Umgebungen zu schreiben
Lodder,

@Lodder: Ja, ich wollte diese Datenbank-Tools mit einigen weiteren Informationen veröffentlichen und dachte, dass die Zeit, die Antworten zu trennen, jetzt ist. Ich glaube, ich habe es ein bisschen mit dem LAMP-Link in der Umgebungssektion vermasselt. Können Sie Ihren vorherigen Link überprüfen und hinzufügen?
FFrewin

1
Klar, ich denke, Lamp muss über Ubuntu installiert werden und ist nicht wie normale herunterladbare Software. Ich gehe also davon aus, dass der Link zu einem Tutorial führen muss. Wird das allerdings bestätigen
Lodder

7

Browser-Tools:

  • Adobe Edge Inspect CC (kostenlos)
    Edge Inspect ist eine wichtige Anwendung für Webentwickler und Designer, die eine Vorschau ihrer Inhalte auf mehreren Mobilgeräten anzeigen müssen. Koppeln Sie mehrere iOS- und Android-Geräte drahtlos mit Ihrem Computer, machen Sie Screenshots von jedem angeschlossenen Gerät und sehen Sie Echtzeitergebnisse von Änderungen an HTML, CSS und JavaScript.

  • Firebug (Firefox) (Bitte beachten Sie, dass es eine Lite-Version für einen anderen Browser gibt, ich würde jedoch die Verwendung der integrierten Inspektoren empfehlen.)

  • ColorZilla (Firefox & Chrome)


Ich empfehle Web Developer als eine weitere großartige Erweiterung für Firefox (und Chrome). Es ist sehr ähnlich zu Firebug, aber es ist anders strukturiert, so dass es einen gewissen Wert hat, beide zu verwenden.
TryHarder

7

Herausgeber:

  • Notepad ++ (für extreme Geschwindigkeit und Einfachheit)
  • Atom
  • Sublime Text (superschnell und funktionsreich)
  • PhpStorm (vollständige PHP-IDE)
  • Netbeans IDE
    Entwickeln Sie schnell und einfach Desktop-, Mobil- und Webanwendungen mit Java, HTML5, PHP, C / C ++ und mehr. NetBeans IDE ist KOSTENLOS, Open Source und verfügt über eine weltweite Community von Benutzern und Entwicklern.

  • Eclipse PDT (PHP Development Tools)
    Das PHP IDE-Projekt liefert ein PHP Integrated Development Environment-Framework für die Eclipse-Plattform. Eclipse IDE ist KOSTENLOS und Open Source. Benötigt Java installiert.

  • Komodo IDE Plattformübergreifende IDE für alle wichtigen Sprachen, einschließlich Python, PHP, Go, Perl, Tcl, Ruby, NodeJS, HTML, CSS, JavaScript und mehr



6

Datenbanken

Design / Entwicklung / Management:

  • MySQL Workbench - (Windows, Mac, Linux)
    MySQL Workbench ist ein einheitliches visuelles Tool für Datenbankarchitekten, Entwickler und DBAs. MySQL Workbench bietet Datenmodellierung, SQL-Entwicklung und umfassende Verwaltungstools für die Serverkonfiguration, Benutzerverwaltung, Sicherung und vieles mehr.
    Mit MySQL Workbench können Sie direkt an Datenbanken auf lokalen oder Remote-Servern arbeiten. Es ist unter Windows, Linux und Mac OS X verfügbar.


  • Sequel Pro - (Mac)
    Sequel Pro ist eine schnelle, benutzerfreundliche Mac-Datenbankverwaltungsanwendung für die Arbeit mit MySQL-Datenbanken. Sie haben direkten Zugriff auf Ihre MySQL-Datenbanken auf lokalen und Remote-Servern.


  • phpMyAdmin (MySQL-Verwaltungstool, geschrieben auf PHP - normalerweise auf jedem Host vorhanden)
    phpMyAdmin ist ein kostenloses, in PHP geschriebenes Software-Tool, das die Verwaltung von MySQL über das Web übernimmt. phpMyAdmin unterstützt eine breite Palette von Operationen auf MySQL, MariaDB und Drizzle. Häufig verwendete Vorgänge (Verwalten von Datenbanken, Tabellen, Spalten, Beziehungen, Indizes, Benutzern, Berechtigungen usw.) können über die Benutzeroberfläche ausgeführt werden, während Sie weiterhin die Möglichkeit haben, beliebige SQL-Anweisungen direkt auszuführen.


  • Adminer (ähnlich wie phpMyAdmin, aber einfacher und
    übersichtlicher ) Adminer (früher phpMinAdmin) ist ein in PHP geschriebenes Datenbankverwaltungstool mit vollem Funktionsumfang. Im Gegensatz zu phpMyAdmin besteht es aus einer einzelnen Datei, die auf dem Zielserver bereitgestellt werden kann. Adminer ist für MySQL, PostgreSQL, SQLite, MS SQL, Oracle, Firebird, SimpleDB, Elasticsearch und MongoDB verfügbar.


Server Backup-Dienstprogramme

  • MySQLDumper
    MySQLDumper ist ein Open-Source-Projekt (GNU-Lizenz), ein PHP- und Perl-basiertes Tool zum Sichern von MySQL-Datenbanken. Es ist besonders für Shared-Hosting-Webspaces geeignet, bei denen Sie keinen Shell-Zugriff haben, und es ist sehr nützlich, wenn große Datenbanken gesichert / hochgeladen / wiederhergestellt werden müssen, bei denen PHP-Skripte aufgrund der maximalen Ausführungszeit nicht mehr genügend Zeit haben.

  • phpMyBackupPro
    phpMyBackup Pro ist eine sehr einfach zu verwendende, kostenlose, webbasierte MySQL-Backup-Anwendung, die unter der GNU GPL lizenziert ist. Sie können geplante Backups erstellen, verwalten und wiederherstellen, herunterladen oder per E-Mail versenden und vieles mehr!

  • AutoMySQLBackup
    AutoMySQLBackup mit einer Grundkonfiguration erstellt tägliche, wöchentliche und monatliche Sicherungen einer oder mehrerer Ihrer MySQL-Datenbanken von einem oder mehreren Ihrer MySQL-Server.


Versionskontrolle der Datenbank:


Sie sind sich nicht sicher, in welche Kategorie sie gehören sollen, aber die Tools von Akeeba sind alle hervorragend - Akeeba Backup und Kickstart zum Übertragen von Websites und zum einfachen Erstellen eigener Backups für nicht technische Personen. Ein Sicherheitsbereich lohnt sich wahrscheinlich auch, in diesem Fall Akeeba Admin Tools.
Richard B

5

Versionskontrolle:

Quellcode:

Versionskontrolle der Datenbank:

Joomla Site Staging

  • StageIt
    Staging-Umgebungserweiterung für Joomla!
    Eigenschaften:
    • Erstellen Sie eine Staging-Umgebung in Sekunden
    • Entwickeln Sie in der Staging-Umgebung ohne Risiko für Ihre Live-Site
    • Nehmen Sie die gewünschten Änderungen vor - aktualisieren Sie Erweiterungen, löschen Sie Inhalte usw
    • StageIt unterstützt ALLE Erweiterungen von Drittanbietern
    • Synchronisieren Sie die Staging-Umgebung jederzeit mit der Live-Site
    • Mit der visuellen Taste können Sie sofort zwischen Umgebungen wechseln
    • Mit automatischen Sicherungen können Sie Ihre Live-Site an einem beliebigen Synchronisierungspunkt wiederherstellen
    • Konfigurieren Sie die Arbeit mit einer Reihe von Servern - sogar mit GoDaddy!

3

Systemvoraussetzungen für Joomla! 3.x

Auch für diejenigen, die gerade erst anfangen und ihre Umgebung einrichten möchten oder einfach Joomla installieren müssen, sind dies die grundlegenden Systemanforderungen, damit Joomla funktioniert:

PHP:


Unterstützte Datenbanken:

MySQL:

SQL Server:

PostgreSQL:


Unterstützte Webserver:

Apache:

Nginx:

Microsoft IIS:

  • Empfohlen : 7
  • Minimum : 7

1
Besser ist es, den Link zu den neuesten Anforderungen zu unterstützen, da er aktuell ist: downloads.joomla.org/technical-requirements, zB Recommended PHP 5.6 oder 7.0+
Tom Kuschel
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.