Zum Inhalt springen
Marketing Factory Digital GmbH
Kontakt
Logo Marketing Factory Digital GmbH
  • Agentur
    • Aktuelles
    • Über uns
    • Geschichte
  • Leistungen
    • Beratung, Analyse und Strategie
    • Programmierung und Entwicklung
      • Schnittstellen
      • PIM-/ERP-Anbindungen
      • Individualentwicklungen
      • Seamless CMS Integration
    • Hosting und Betreuung
      • Cloud-Strategien
      • Hosting Partner der Marketing Factory
    • Leistungen mit Dritten
  • Technologie
    • TYPO3
      • Aktuelle TYPO3-Versionen
    • Shopware
    • IT-Sicherheit
      • DDoS-Protection
      • Continuous Upgrading
      • Privacy First
    • Tech Stack
      • Bekenntnis zu Open Source
      • Technologieauswahl
      • PHP-Ökosystem
      • Containerisierung & Clustering
      • Content Delivery Networks
      • Suchtechnologien
  • Referenzen
    • Projekte
    • Kunden
      • Kundenliste
    • Screenshot der Homepage der neuen Maxion Wheels WebsiteNEU: Relaunch der Corporate Website von Maxion Wheels
  • Community
    • Community-Initiativen
  • Blog
  • Kontakt
  • Deutsch
  • English

Sie sind here:

  1. Blog
  2. WordPress mit Composer aufsetzen – Oder: Einem Wellensittich das Sprechen beibringen
Wellensitich
  • Development
  • WordPress
09.04.2019

WordPress mit Composer aufsetzen – Oder: Einem Wellensittich das Sprechen beibringen


Wer kennt die Situation nicht: Es steht mal wieder ein WordPress (Security-)Update an und auf magische Art und Weise sind nach dem Update das Akismet Plugin, sowie zwei gar nicht benötigte bzw. verwendete Themes installiert.

Da WordPress standardmäßig nur als Gesamtpaket mit eben diesem Plugin sowie mindestens dem aktuellen Theme daherkommt, war die anschließende Deaktivierung / Deinstallation der nicht benötigten Aspekte halt einfach der saure Apfel, in den wir zwangsweise eben gebissen haben. Des Weiteren waren für unsere WordPress-Updates leider noch viele händische Schritte nötig, die wir jedoch schrittweise immer mehr automatisiert haben, um damit die Komplexität aus der vermeintlich kleinen Aufgabe „WordPress-Update durchführen“ zu nehmen.

Nun setzen wir als etablierte TYPO3-Agentur spätestens seit der Einführung der TYPO3 Version 8.7 LTS konsequent auf Composer und genießen die Vorteile seit jeher. Warum also nicht auch einmal versuchen, WordPress mit Composer aufsetzen? Dachten wir uns auch. Gesagt getan.

Vorweg: Ja es klappt und das sogar mehr als zufriedenstellend.

Wie genau wir hier vorgegangen sind, erfahrt Ihr nun im Folgenden. Wer lieber mit einer "Basis"-Konfiguration beginnen will, der kann sich gerne mal das Repository hier anschauen. Dort habe ich ein Beispiel-Repository aufgesetzt mit dem man direkt anfangen kann.

Schritt 1: composer.json inital aufsetzen

Los geht's – Schritt 1: Alles auf Anfang und wir bauen unseren Blog noch mal technisch gesehen von Grund auf neu mit Composer nach. Dabei war die größte Hürde den WordPress-Core nur selektiv mit bestimmen Bestandteilen zu ziehen. Wir haben uns von dieser Seite hier inspirieren lassen (https://roots.io/bedrock/) und schnell herausgefunden, dass das genau das ist, was wir suchen. In der composer.json müsst ihr dann auf folgende Angaben bzgl. der Ablage-Orte achten:

  • Cores (wordpress-install-dir)
  • Plugins (type:wordpress-plugin)
  • eigene Themes (type:wordpress-theme)
  • Sprachen (vendor:koodimonni-language)

Da wir die Konfiguration unseres Blogs zusätzlich über das Environment abhängig steuern wollten, haben wir diese über die Datei application.php gesteuert. Dadurch haben wir die Möglichkeit, pro Umgebung die Zugangsdaten für die Datenbank und den Rootpfad der WordPress-Instanz zu ziehen. Bitte beachten, dass ihr hier entsprechend den Rootpfad anpassen müsst, je nachdem für welchen Pfad ihr Euch in der composer.json entscheidet (wordpress-install-dir). Jetzt noch eine angepasste wp-config.php anlegen und schon kann es weitergehen. (Eine .htaccess Datei sollte übrigens nicht vergessen werden 😉)

Schritt 2: wpcli für Plugins nutzen

Die Übersetzungen des Cores können dann ebenfalls mit dem Repository von koodimonni-language mit Composer eingebunden werden. Somit haben wir nun den Core komplett – und zwar direkt in unserer gewünschten Zielsprache. Was nun noch fehlt, ist ein Sprachupdate der Plugins. Hier kommt nun wpcli ins Spiel. Mit Hilfe von "wpcli/language-command" und "wpcli/extension-command" können wir nun folgende Befehle ausführen (_WPCLI_ ist durch Euren Pfad zu wpcli zu ersetzen):

Dieser Befehl aktiviert alle installierten Plugins :

  _WPCLI_  plugin activate --all --path=_YOUR_WEB_PATH_ --debug=boostrap

Installiert alle Sprachdateien für alle aktiven Plugins für die Sprache de_DE ("_YOUR_WEB_PATH_" sollte durch den Pfad zur Installation ersetzt werden):

  _WPCLI_ language plugin install de_DE --all --path=_YOUR_WEB_PATH_

Updates aller Sprachdateien für die einzelnen Plugins:

  _WPCLI_  language plugin update —all --path=_YOUR_WEB_PATH_

Schritt 3: Eigenes (Child-)Theme einbinden

Ein eigenes (Child-)Theme kann nun in Schritt 3 über die composer.json hinzugefügt werden. Wer nur eine Anpassung eines Standard-Themes macht, der sollte in seinem Child-Theme in der composer.json ein Requirement auf das Standard-Theme setzen. Auch hier gilt: Nicht das Package für die Übersetzung des Themes als Abhängigkeit vergessen 😉. Nun könnt ihr loslegen!

Et voilá: Schon habt ihr euer WordPress mit composer aufgesetzt!

Ich hoffe, dass soweit alles verständlich war. Über Lob, Kritik oder Anregungen sowie Erfahrungen/Berichte wie Ihr mit unserer Anleitung zurecht gekommen seid, freuen wir uns wie immer.

Zu diesem Thema hatte ich übrigens beim WordCamp Köln 2018 schon einen Vortrag gehalten, den ihr Euch hier anschauen könnt. Updates habe ich hier in den Artikel einfließen lassen. Das Beispiel-Repository findet ihr unter: https://github.com/sfsmfc/wp_composer_starter. Und nun heißt es ran an die Tasten und viel Erfolg beim eigenen WordPress-Projekt.

Simon Schmidt
Blog als RSS-Feed abonnieren

Verwandte Beiträge

  • Relaunch der Website unseres Kunden Maxion Wheels auf Basis von TYPO3 12.4 LTS
  • BFSG: Was ist der richtige Alt-Text für welche Bilder?
  • Effiziente Entwicklungsumgebungen: Warum wir Kubernetes durch Virtual Machines ersetzt haben
  • Anwenderfreundliche Individualisierungen des TYPO3-Backends

Wir freuen uns, wenn Ihr diesen Beitrag teilt.


Kommentare

Keine Kommentare gefunden.

Kommentar verfassen.

Ich bin darauf hingewiesen worden, dass die Verarbeitung meiner Daten auf freiwilliger Basis erfolgt und dass ich mein Einverständnis ohne für mich nachteilige Folgen verweigern bzw. jederzeit gegenüber der Marketing Factory Digital GmbH per Post (Marienstraße 14, D-40212 Düsseldorf) oder E-Mail (info@marketing-factory.de) widerrufen kann.

Mir ist bekannt, dass die oben angegebenen Daten so lange gespeichert werden, wie ich die Kontaktaufnahme durch Marketing Factory wünsche. Nach meinem Widerruf werden meine Daten gelöscht. Eine weitergehende Speicherung kann im Einzelfall erfolgen, wenn dies gesetzlich vorgeschrieben ist.

  • Datenschutzerklärung
  • Impressum

© Marketing Factory Digital GmbH

Bildnachweise
  1. "Wellensittich": Dalton Touchberry / Lizenz: Unsplash License