¿Cómo instalar el paquete a través del compositor?

8

Me gustaría agregar una biblioteca a mi módulo personalizado drupal 7. ¿La biblioteca se puede instalar a través del compositor, pero no puedo encontrar una solución para la instalación? ¿Cómo puedo instalar esta biblioteca? He instalado el "administrador de compositores" pero todavía no puedo ejecutarlo.

gregab
fuente
Me encantaría saber la respuesta de esta pregunta también.
itsdarrylnorris
1
No estoy de acuerdo con el voto cercano sobre esto. Cómo usar el compositor con Drupal definitivamente es un tema.
mpdonadio

Respuestas:

6

Para comenzar, agregue un composer.jsonarchivo a su módulo. Lo único que necesita aquí es la requiresección que incluye su biblioteca externa.

Composer manageres una forma de combinar todas sus dependencias, pero hay otras opciones para que Drupal cargue su archivo autoload.php. La técnica que prefiero es crear un composer.jsonarchivo de nivel de proyecto en su raíz Drupal y usar el módulo composer_vendor para incluir su archivo autoload.php.

La forma más fácil de comenzar es usar la extensión composer_generate Drush para crear su composer.jsonarchivo a nivel de proyecto .

$ drush dl composer_generate $ cd /path/to/drupalroot $ drush composer-generate > composer.json $ composer install

Composer-generate agregará todos los proyectos utilizados actualmente en su sitio Drupal, más composer_vendor, por lo que composer installdebería funcionar para usted. La magia principal aquí está en los cargadores automáticos personalizados agregados a la plantilla; Eche un vistazo a la salida para ver qué se incluye.

Aquí se debe tener precaución, por supuesto; la plantilla predeterminada colocará todos sus módulos en sitios / all / modules / contrib. Puede editar la plantilla antes de ejecutar la instalación del compositor si esto no es lo que desea.

También deberá tener cuidado si tiene algún módulo modificado; Hay varias maneras de lidiar con cualquier contenido pirateado, pero eso está un poco más allá del alcance de esta pregunta.

Actualizar

Si no desea ejecutar Drush, también puede escribir a mano su propio archivo composer.json utilizando el proyecto https://github.com/drupal-composer/drupal-project . Esta es la plantilla en la que se basa composer-generate.

greg_1_anderson
fuente
No usamos drush. Se trata de esta lib: github.com/giggsey/libphonenumber-for-php
gregab
Puede instalar Drush y usarlo solo para descargar y ejecutar la herramienta composer_generate. Esto sería más rápido que escribir a mano su propio archivo composer.json.
greg_1_anderson
@ greg_1_anderson agregando a la pregunta principal, ¿cómo podemos cargar el proveedor autoload.php para la API de terceros?
Sukhjinder Singh
Drupal 8 cargará el autocargador por usted, por lo que supongo que está preguntando sobre Drupal 7. Utilice el módulo composer_vendor que recomiendo anteriormente o simplemente agregue el archivo include a su archivo settings.php.
greg_1_anderson