So beliebt und nützlich ist Joomla! Im letzten Jahrzehnt. wird derzeit als einer der Top-Open-Source-CMSs weltweit angesehen. Seit seiner Gründung durch das Mambo-CMS hat es sich in den letzten zehn Jahren so sehr verbessert, dass es kein Wunder ist, dass bereits viele Auszeichnungen in der Tasche stehen und immer noch zählen.
Insbesondere wenn Sie sich im Bereich Web-Entwicklung befinden, ist es unabhängig von der Technologie, mit der Sie es zu tun haben, unmöglich, vom Wort Joomla! Wenn es so ist, bin ich sicher, dass Sie zu einem anderen Planeten gehören! Es klingt vielleicht etwas überwältigend, aber ich kann Ihnen versichern, dass es sich mehr als lohnt, wenn Sie das noch nicht für Ihre nächste Content-Management-Lösung getan haben. In der Tat ist es mehr als nur ein CMS. Wir werden später in diesem Artikel besprechen, was Joomla! ist fähig zu.
In diesem Artikel werden wir ausführlich besprechen, was Joomla! ist und wie es für Ihre webbasierten Projekte nützlich sein könnte. Beginnen wir mit einem Blick auf das grundlegende CMS und gehen wir die Funktionen von Joomla! Im gesamten Artikel und im letzten Abschnitt werde ich Ihnen nützliche Quellen mit Referenzen geben.
Ein Content-Management-System (CMS) ist ein System, mit dem Sie Informationen einfach und effektiv verwalten können. Die Informationen können alles sein, sei es ein einfacher Artikel oder ein komplexes Medienverwaltungssystem. Das Ziel eines CMS ist es, einen effektiven Workflow bereitzustellen, der den eindeutigen Status einer Entität zu einem bestimmten Zeitpunkt darstellt. Einfach ausgedrückt, können Informationen durch verschiedene Zustände wie Entwurf, Überprüfung, Bearbeitung und Veröffentlichung geleitet werden.
Insbesondere nicht-technische Benutzer lieben es, ein solches System zur Verfügung zu haben, das es ihnen ermöglicht, Inhalte einfach zu organisieren und den gesamten Prozess eher freudig als hektisch zu gestalten. In jeder webbasierten Anwendung gibt es drei grundlegende Vorgänge, die die Administratoren meistens selbst ausführen, und zwar für jede Entität hinzufügen, bearbeiten und löschen. Und dafür ist ein CMS konzipiert. Ganz gleich, ob Sie dies mit einem WYSIWYG-Editor, Inline-Editing oder einem anderen ausgefallenen Leckerbissen tun können. Die Idee besteht darin, den gesamten Prozess mühelos zu gestalten.
Es ist nicht nur die Organisation und das Management von Inhalten, sondern auch, wie gut es ist, eine differenzierte Zugriffskontrolle für verschiedene Benutzergruppen bereitzustellen. Dies wird als eine der herausragenden Funktionen eines CMS angesehen. Es ist offensichtlich, dass Sie die Verantwortlichkeiten auf verschiedene Rollen wie Autor, Herausgeber und Herausgeber aufteilen möchten. Die Bereitstellung von Content-Versionierung ist auch etwas, das Sie im Auge behalten möchten, da Sie Artikel zurückrollen können, wenn die Dinge nicht wie erwartet laufen.
In seiner einfachsten Form könnte der typische Workflow eines CMS wie folgt aussehen:
Im Allgemeinen ist das, was wir oben aufgeführt haben, eines der einfachsten, das wir bisher gesehen habeneffektive Anwendungsfälle, an die man sich halten könnte. Ganz zu schweigen davon, dass Sie in der realen Welt komplexere Workflows mit umfangreichen Funktionen wie Markieren, soziales Teilen und Kommentieren erleben werden, um nur einige zu nennen.
Dies ist eine schnelle und hoffentlich nützliche Einführung in ein CMS-System. Ab dem nächsten Abschnitt konzentrieren wir uns auf das Hauptthema dieses Artikels, Joomla!. Dies ist etwas, was ich versprochen habe, das wir in diesem Artikel näher untersuchen werden.
Seit seiner Gründung im Jahr 2005 hat Joomla! hat sich im Laufe der Jahre weiterentwickelt, und das Endergebnis ist eines der leistungsfähigsten und funktionsreichsten CMS, das von Millionen von Benutzern heruntergeladen wird. Wie sie sagen, ist es wirklich ein Community-basiertes CMS, das von und für die Community betrieben wird! Bei jedem Open-Source-Projekt wie bei Joomla! Ist die Unterstützung durch Community-Mitglieder ein wichtiger Faktor für die Nachhaltigkeit und Nachhaltigkeit des Projekts.
Joomla! wird mit einigen der am häufigsten verwendeten Webtechnologien wie PHP, MySQL und Apache erstellt. Es ist jedoch nicht nur auf die oben genannten Technologien beschränkt, sondern unterstützt auch andere gängige Datenbanken und Webserver. Sie können zwischen SQL Server und PostgreSQL anstelle der MySQL-Datenbank-Engine wählen, wenn Sie dies vorziehen. Andererseits sind Microsoft IIS und NGINX Kandidaten für die Wahl des Webservers neben Apache.
Für Entwickler bietet Joomla! wird mit dem MVC-Designmuster erstellt, ein beliebtes Muster, das bereits von vielen anderen Frameworks verwendet wird. Obwohl die Erörterung des MVC-Entwurfsmusters etwas außerhalb des Rahmens dieses Tutorials ist, bietet es eine Trennung der Bedenken, so dass sich der Entwickler mehr auf die Entwicklung konzentrieren kann, anstatt sich darum zu sorgen, wie es im Frontend aussehen würde.
Es ist keine Überraschung, dass die neueste Hauptversion von Joomla! ist reaktionsschnell und sofort mobil, da es heutzutage unmöglich ist, dies zu ignorieren, und es könnte für jedes Framework, das dies tat, teuer sein. Als dies geschrieben wurde, hat Joomla! 3.4.x unterstützt PHP 5.5+, nicht jedoch PHP 7. Die Veröffentlichung der mit Spannung erwarteten Version Joomla! 3.5 steht vor der Tür und behauptet, PHP 7 zu unterstützen, was eine enorme Leistungssteigerung bedeutet, wenn Experten glauben.
Wenn dies also ein Überblick über das war, was Joomla! In der folgenden Liste werden einige der konkreten Funktionen erläutert, auf die Sie gewartet haben, die mit dem Joomla! Kern selbst.
Natürlich ist es unmöglich, jedes einzelne Element in einem einzigen Artikel ausführlich zu besprechen. Für neugierige Benutzer lasse ich am Ende dieses Artikels einige nützliche Ressourcen.
Sie sind auf der falschen Seite des Tisches, wenn Sie glauben, dass Joomla! ist nur für das Content-Management von Nutzen, da Sie überrascht sein werden, dass auf der offiziellen JED-Website (Joomla Extensions Directory) mehr als 7.000 Erweiterungen verfügbar sind, die Funktionen bieten, die von einer einfachen Bildergalerie-Lösung bis zu einer vollständigen Buchung reichen und Reservierungsverwaltungssystem. In der Tat ist die Möglichkeit groß, dass die Erweiterung, die Sie selbst entwickeln möchten, bereits auf der JED verfügbar ist!
Die erweiterbare Architektur von Joomla! macht die Entwicklung von benutzerdefinierten Erweiterungen zum Kinderspiel. Suchen Sie ein System, das als Blog dient? Vielleicht erfordert Ihr neues Unternehmen, dass Sie ein neues YouTube-System erstellen oder versuchen, das nächste Facebook zu erstellen! Die JED bietet Erweiterungen für jede der oben genannten Anforderungen.
Werfen Sie einen Blick auf den Luxus, den Sie haben könnten, wenn Sie sich für Joomla entscheiden! als ihre Lösung:
Um nur einige zu nennen, da es sehr schwierig ist, alle Möglichkeiten aufzulisten. Wie sie sagen, ist die Einschränkung Ihre Vorstellungskraft - für Joomla wahr!
Im täglichen Joomla! Bei der Entwicklung gibt es Zeiten, in denen Sie das Gefühl haben, dass Sie einen bestimmten Teil des Frameworks, z. B. die Routing-API, ziehen wollten, anstatt eine ganze Reihe von CMS-Funktionen zu verwenden, die für dieses bestimmte Projekt veraltet sind. Für eine einfache PHP-basierte Anwendung wäre es schön, die ausgewählten Funktionen des Frameworks zu haben, die für Ihre Anwendung am besten geeignet sind, und nicht ein ganzes CMS.
Angenommen, Sie möchten einen Dienst erstellen, der Joomla! Daten an eine mobile Anwendung eines Drittanbieters. Um dies zu erreichen, ist es vollkommen in Ordnung, eine benutzerdefinierte Erweiterung zu erstellen, die die gewünschte Funktionalität erfüllt, jedoch mit dem zusätzlichen Gepäck dieser unerwünschten CMS-Funktionen in Ihrem Fall. Stattdessen hätten Sie lieber die APIs für Ihre Anforderungen ausgewählt, indem Sie die restlichen Funktionen vermieden haben. Das Endprodukt ist eine superleichte Webanwendung.
Das ist der Zweck von Joomla! Framework, früher als Joomla! Plattform. Sie können eine Anwendung mit bekannten APIs erstellen, wenn Sie aus dem Joomla! CMS-Hintergrund Es bietet, wie auch bei den anderen PHP-Frameworks, eine Reihe von APIs, mit denen Sie sich mehr auf die anwendungsspezifischen Funktionen konzentrieren können, anstatt das Rad für Funktionen wie Eingabe-Handling, Datenbank-Abstraktionsebene, Routing usw. neu zu erfinden.
Es ist keineswegs mit der Joomla! CMS, da es für beide Softwarekomponenten eine eigene Entwicklungslinie gibt. Die Hauptidee besteht darin, die Softwarepakete in separate Module zu entkoppeln, anstatt sie in ein einzelnes Paket zu binden, sodass sie sich selbst weiterentwickeln können. In der Tat könnte man an die Joomla! CMS als Kombination der Joomla! Framework und CMS-Module.
Ein vielversprechendes Beispiel für die Joomla! Rahmen ist das Issue Tracker Anwendung des Joomla! CMS selbst. Auf dieselbe Weise können Sie damit jede Webanwendung erstellen, die Sie mit einem anderen PHP-basierten Framework erstellt hätten. Entdecken Sie es und ich bin sicher, dass es für jeden etwas zu bieten hat.
In diesem Abschnitt werden wir die wichtigen Elemente des Joomla! Architektur, die als Grundbausteine in jeder Anwendung dient.
Dies ist eines der wichtigsten Elemente und ein Muss im Stack, das die vollständige Funktionalität eines bestimmten Abschnitts bietet. Damit können Sie eine Basis erstellen, die sich mit der Geschäftslogik einer Anwendung befasst. Es ist auch eines der Elemente, das Joomla! Erweitert, falls Sie neue Funktionen einführen möchten.
Wenn Sie beispielsweise eine Geschäftsverzeichnisanwendung erstellen möchten, sollten Sie die Einträge aus dem Backend hinzufügen, bearbeiten und löschen können. Auf der anderen Seite sollte es im Frontend eine schöne Liste mit erweiterten Such-, Pager- und Sortierfunktionen anzeigen. Es ist also die Komponente, die Sie erstellen möchten, um die oben genannte Funktionalität einzuschließen.
Als Faustregel gilt: Wann immer Sie neue Funktionen in Joomla! Erstellen möchten, ist dies die Komponente, die zur Rettung kommt.
Bevor ich erkläre, was ein Modul in Joomla! Ist, möchte ich Ihnen ein paar Beispiele geben, um die Dinge zu vereinfachen. Wenn Sie jemals Joomla! Im Frontend werden Sie viele Blöcke wie Login, Neueste Artikel, Neueste Feeds usw. sehen. Zu Ihrer Überraschung sind sie Joomla! verschiedenen Positionen in der Vorlage zugewiesen! Eine Joomla! Das Modul ist ein beweglicher Block, der die Ausgabe erstellt, indem er die Daten meistens von der Komponente abruft und die Ausgabe anzeigt.
In den meisten Fällen müssen Sie das Verhalten des Kern-Frameworks ändern, um Ihre benutzerdefinierten Anforderungen zu erfüllen. Hier kommen Plugins ins Spiel. Eine Joomla! Mit dem Plugin können Sie bestimmte vom System definierte Ereignisse abfangen, indem Sie die Tür für die Anpassung einiger wichtiger Workflows öffnen.
Angenommen, Sie möchten eine Drittanbieteranwendung im Falle einer Benutzerregistrierung auf Ihrer Website benachrichtigen. Natürlich gibt es eine Möglichkeit, die Daten zu ändern, die zwischen den Ereignisaufrufen hin und her wechseln.
Wie der Name vermuten lässt, behandelt er die Präsentationsschicht Ihrer Website und hilft beim Strukturieren Ihres Website-Layouts. Manchmal wird es auch als Joomla! Bezeichnet. Theme, da Sie das Erscheinungsbild Ihrer Website ändern können. So ändern Sie das Standardlayout des Joomla! Im Kern müssen Sie ein benutzerdefiniertes Design gemäß Joomla! Themenstruktur, und das ist etwas, auf das Sie häufig stoßen werden, wenn Sie ein Joomla sind! Entwickler.
Ganz zu schweigen davon, dass die neueste Version von Joomla! Im Front-End und Back-End gibt es ein responsives Thema. Es ist auch etwas, das von den Designern während der Entwicklung der eigenen Themen erwartet wird.
Das JED ist etwas, mit dem Sie sich vertraut machen sollten, da Sie dort wahrscheinlich eine ganze Weile auf der Suche nach einer Erweiterung für Ihren Zweck sind. Es ist eine offizielle Joomla! Site, die viele Erweiterungen zur Auswahl bietet, in Form von Komponenten, Modulen und Plugins.
Erweiterungen bei JED werden unter zwei Arten von lizenzfreien und kommerziellen Versionen veröffentlicht. Wie Sie vielleicht schon erraten haben, werden die kommerziellen Erweiterungen als "Goodies" bezahlt, die entweder als Abonnementmodell oder als einmalige Gebühr erhältlich sind. Als Entwickler ist es ein Bereich, in dem Sie den Vorteil haben möchten, indem Sie Qualitätserweiterungen entwickeln und solche Lizenzen freigeben.
Tatsächlich funktioniert es meistens auf diese Weise: Die kostenlose Version einer Erweiterung ist mit grundlegenden Funktionen erhältlich, und die kostenpflichtige Version derselben Erweiterung wird mit Leistungsmerkmalen erweitert, in einigen Fällen in Form von Add-Ons. Ganz zu schweigen davon, dass der Luxus des technischen Supports des Erweiterungsdiensteanbieters mit der kommerziellen Version einhergeht. Daher ist es ein erfolgreiches und bewährtes Geschäftsmodell für viele kommerzielle Erweiterungsanbieter.
Trotzdem nehme ich den qualitätsfreien Erweiterungen, die sowohl dem Zweck als auch den bezahlten Erweiterungen dienen, keinen Kredit. Tatsächlich handelt es sich dabei um eine Reihe strenger Standards und Regeln, die jede Erweiterung durchlaufen muss, um sicherzustellen, dass die auf JED aufgeführten Erweiterungen den gewünschten Qualitätsstandards entsprechen.
Das ist die JED, die Ihnen zur Verfügung steht - machen Sie es sich bequem und Sie werden froh sein, dass Sie das getan haben.
Erstbenutzern wird empfohlen, Joomla! Zu installieren. Auf Ihrem lokalen System können Sie die Funktionen des Front-End und Back-End erkunden, um sich an das System zu gewöhnen. Hier sind einige wichtige Ressourcen für Neulinge:
Für erfahrene PHP-Entwickler:
Es ist ein so breites Thema, dass Ihnen zahlreiche Online-Tutorials und Videos zur Verfügung stehen. Auch die Mitglieder von Joomla! Community-Forum ist so freundlich, dass Sie Probleme lösen können.
Es war mir eine Freude, eines der beliebtesten Open-Source-CMS im Bereich Webentwicklung-Joomla! Obwohl wir die Oberfläche des Joomla! Kaum zerkratzt haben! Ich hoffe, ich konnte dem Thema gerecht werden.
Beginnend mit einer Einführung in CMS haben wir uns mit den verschiedenen Aspekten von Joomla! Beschäftigt, gefolgt von einer Diskussion wichtiger architektonischer Elemente. Wir haben uns auch die JED angesehen und im späteren Teil dieses Artikels einige nützliche Ressourcen zur Verfügung gestellt.
Zögern Sie nicht zu sehen, was wir für den Verkauf und zum Lernen auf dem Markt zur Verfügung haben, und zögern Sie nicht, Fragen zu stellen und geben Sie wertvolles Feedback über den untenstehenden Feed.