Vorwort
Composer ist ein Paketmanager für PHP und ist vor allem bei PHP-Frameworks weit verbreitet.
Composer bietet die Möglichkeit PHP Code von anderen Quellen (dependencies) zum eigenen Projekt dazu zu installieren und die installierten Versionen zu verwalten.
Obwohl WordPress keinen offiziellen Support für Composer bietet, kann es dennoch verwendet werden, um Plugins, Themes und in manchen Setups sogar den WordPress Core zu installieren und Updates zu verwalten.
Der folgende Guide erklärt, wie zu einem bestehenden Composer Setup für WordPress Borlabs Cookie installiert werden kann. Die Installation anderer Borlabs Plugins kann sich in Einzelfällen unterscheiden, so benötigen Borlabs Cache und Borlabs Font Blocker keine Authentifizierung. Weiter unten finden sich Beispiele, wie diese Plugins eingerichtet werden können.
Anleitung
Als Erstes muss das Repository hinzugefügt werden. Hierfür füge folgenden Code in das repositories
object in der composer.json
ein.
"repositories": [
{
"type": "composer",
"url": "https://borlabs-cookie.composer.borlabs.io/composer"
}
]
Nachdem das Repository hinzugefügt ist, muss die eigentliche Dependency im require
object in der composer.json
hinzugefügt werden.
"require": {
"borlabs/borlabs-cookie": “^3,
}
Der “^3" bedeutet, dass beim composer update
immer auf die neueste Borlabs Cookie version geupdated wird.
Für die Authentifizierung muss nun noch der Composer API key hinterlegt werden.
Der Composer API key ist im Borlabs Service Dashboard in der Detailseite der Lizenz einsehbar. (Siehe Screenshot)
Wenn noch keine auth.json
Datei im selben Ordner wie die composer.json
erstellt ist, muss sie mit folgendem Inhalt erstellt werden:
{
"http-basic": {
"borlabs-cookie.composer.borlabs.io": {
"username": "irrelevant",
"password": "YOUR-COMPOSER-API-KEY"
}
}
}
Der Platzhalter YOUR-COMPOSER-API-KEY
muss mit dem Composer API key vom Borlabs Service Dashboard ersetzt werden.
auth.json
Datei nie commited werden, da sie Secrets enthält. Nachdem all das abgeschlossen ist, sollte composer update
Borlabs Cookie in der aktuellsten Version installieren.
Konfiguration für jedes Plugin
Array & Object Syntax
Unsere Beispiele nutzen die Array-Syntax, möchtest du stattdessen die Object-Syntax verwenden, musst du unsere Beispiele wie folgt ändern:
Array
"require": {
"borlabs/borlabs-cache": "^1",
},
"repositories": [
{
"type": "composer",
"url": "https://borlabs-cache.composer.borlabs.io/composer"
}
]
Object
"require": {
"borlabs/borlabs-cache": "^1",
},
"repositories": {
"borlabs-cache": {
"type": "composer",
"url": "https://borlabs-cache.composer.borlabs.io/composer"
}
}
Borlabs Cache
composer.json:
"require": {
"borlabs/borlabs-cache": "^1",
},
"repositories": [
{
"type": "composer",
"url": "https://borlabs-cache.composer.borlabs.io/composer"
}
]
Borlabs Cookie
composer.json:
"require": {
"borlabs/borlabs-cookie": "^1",
},
"repositories": [
{
"type": "composer",
"url": "https://borlabs-cookie.composer.borlabs.io/composer"
}
]
auth.json:
{
"http-basic": {
"borlabs-cookie.composer.borlabs.io": {
"username": "irrelevant",
"password": "YOUR-COMPOSER-API-KEY"
}
}
}
Borlabs Font-Blocker
composer.json:
"require": {
"borlabs/borlabs-font-blocker": "^1",
},
"repositories": [
{
"type": "composer",
"url": "https://borlabs-font-blocker.composer.borlabs.io/composer"
}
]
Borlabs Opt-in for WPForms
composer.json:
"require": {
"borlabs/borlabs-opt-in-wpforms": "^1",
},
"repositories": [
{
"type": "composer",
"url": "https://borlabs-opt-in-wpforms.composer.borlabs.io/composer"
}
]
auth.json
{
"http-basic": {
"borlabs-opt-in-wpforms.composer.borlabs.io": {
"username": "irrelevant",
"password": "YOUR-COMPOSER-API-KEY"
}
}
}
Vollständiges composer-Setup
Der Artikel behandelt nur die Ergänzung zu einem bestehenden composer-Setup. Möchtest du anfangen composer für WordPress zu verwenden, empfehlen wir diesen Artikel: https://www.smashingmagazine.com/2019/03/composer-wordpress/