Mit Drupal 8 erfolgt die Softwareverwaltung mit composer, zumindest ist dies der empfohlene Weg.
Möchte man das Colorbox-Modul laden, geht dies über den Befehl:
composer require drupal/colorbox
Damit wird das Modul auch wie gewünscht heruntergeladen und kann installiert/aktiviert werden.
Allerdings benötigt das Modul auch die Colorbox-Library. Diese wird in Drupal 8 im Ordner web/libraries/colorbox installiert. Man kann die Library manuell dort hinkopieren oder auch über drush colorbox-plugin
herunterladen. Allerdings ist die Library damit nicht in der Composer-Paketverwaltung eingeschlossen und wird damit nicht automatisch heruntergeladen wenn man z. B. composer install
ausführt. Zudem wird der Ordner web/libraries üblicherweise auch nicht in der Versionsverwaltung geführt, da Libraries wie Contrib-Module rein über composer gehandhabt werden.
Um die Library via composer zu laden ergänzt man sein composer.json auf der root-Ebene wie folgt im Bereich "repositories":
"repositories": [
{
"type": "composer",
"url": "https://packages.drupal.org/8"
},
{
"type": "package",
"package": {
"name": "jackmoore/colorbox",
"version": "master",
"type": "drupal-library",
"dist": {
"url": "https://github.com/jackmoore/colorbox/archive/1.x.zip",
"type": "zip"
},
"require": {
"composer/installers": "^1.2"
}
}
}
],
Neu hinzugefügt wird dieser Teil
{
"type": "package",
"package": {
"name": "jackmoore/colorbox",
"version": "master",
"type": "drupal-library",
"dist": {
"url": "https://github.com/jackmoore/colorbox/archive/1.x.zip",
"type": "zip"
},
"require": {
"composer/installers": "^1.2"
}
}
}
Danach kann man die Library mit composer require jackmoore/colorbox
installieren.
Kommentare
Weitere Methode
Hier wird unter der akzeptierten Lösung eine weitere Methode beschrieben:
https://stackoverflow.com/questions/43121292/how-to-install-third-party-...
Anmerkung
@Stefan: Vielen Dank für das Teilen Deiner Lösung.
Bei "Neu hinzugefügt wird dieser Teil" muss vor die öffnende 1. geschweifte Klammer noch ein Komma - aber das findet man anhand der Fehlermeldung, dass die angepasste composer.json Datei einen Syntaxfehler hat, im Zweifel auch selbst heraus.
Deine Lösung funktioniert auch noch in der aktuellen Drupal 8.9 Version. Ich hatte neulich mit einer Library für das ckwordcount contrib module Probleme, diese über Composer zu installieren - siehe auch https://www.drupal.org/project/ckwordcount/issues/3172165 - und ich musste mir dann mit der dort genannten Behelfslösung mit dem Umkopieren der lib aus dem vendor Ordner behelfen - siehe https://www.drupal.org/project/ckwordcount/issues/3172165#comment-13833662 - aber vielleicht bekomme ich Deine Lösung diesbezüglich adaptiert, weil sie auf jeden Fall eleganter anmutet ;-)
Beste Grüße
Martin (vom bednorz Projekt)
Neuen Kommentar schreiben