Je souhaite ajouter une bibliothèque à mon drupal 7. La bibliothèque peut être installée via Composer, mais je ne trouve pas de solution d'installation. Comment puis-je installer cette bibliothèque? J'ai installé "composer manager" mais je n'arrive toujours pas à le faire fonctionner.
Pour commencer, ajoutez un composer.json
fichier sur votre module. La seule chose dont vous avez besoin ici est la section require
qui inclut votre bibliothèque externe.
Composer manager
est un moyen de combiner toutes vos dépendances ensemble, mais il existe d'autres options pour obtenir Drupal pour charger votre fichier autoload.php. La technique que je préfère est de créer un niveau projet composer.json
fichier dans votre Drupal root, et utilisez le module composer_vendor pour inclure votre fichier autoload.php.
La façon la plus simple de commencer est d'utiliser l'extension composer_generate Drush pour construire votre projet au niveau composer.json
fichier.
$ drush dl composer_generate $ cd /path/to/drupalroot $ drush composer-generate > composer.json $ composer install
Composer-generate ajoutera tous les projets actuellement utilisés dans votre Drupal, plus composer_vendor, donc composer install
devrait juste fonctionner pour vous. La magie principale réside dans les chargeurs automatiques personnalisés ajoutés au modèle; jetez un oeil à la sortie pour voir ce qui était inclus.
Une certaine prudence doit être utilisée ici, bien sûr; le modèle par défaut mettra tous vos modules dans sites/all/modules/contrib. Vous pouvez modifier le modèle avant d'exécuter composer installer si ce n'est pas ce que vous voulez.
Vous devrez également faire attention si vous avez des modules modifiés; il existe un certain nombre de façons de gérer tout contenu piraté, mais cela dépasse un peu la portée de cette seule question.
Mise à jour
Si vous ne voulez pas exécuter Drush, vous pouvez également taper à la main votre propre fichier composer.json en utilisant le projet https://github.com/drupal-composer/drupal-project . Il s'agit du modèle sur lequel est basé le générateur.