Antes de responder, es útil tener un poco de información sobre cómo Drupal encuentra módulos. Drupal utiliza una lista de sugerencias de la raíz de Drupal para descubrir dónde encontrar módulos. En orden de prioridad:
sites/$SITENAME/modules
sites/all/modules
profiles/$INSTALLPROFILE/modules
modules
Si Drupal no encuentra un módulo en (1) , verifica (2) . Si no está allí, marca (3) , y así sucesivamente.
Para (1) , si solo está utilizando una instalación básica de Drupal en un solo sitio, $SITENAME
es default
. De otra manera:
- En Drupal 6,
$SITENAME
es el nombre de host del sitio. Si su sitio se encuentra en example.com
, $SITENAME
sería example.com
.
- En Drupal 7,
$SITENAME
se define en sites/sites.php
. Si nos fijamos example.sites.php
, puede ver cómo definirlo. También es importante tener en cuenta que cualquier módulo enumerado allí solo será utilizable para esos sitios específicos, no para todos los sitios.
En (2) , cualquier módulo que se encuentre allí podrá utilizarse en cualquier sitio de la instalación de Drupal. También se dejará intacto cuando actualice la instalación principal. Este es, por supuesto, el lugar recomendado para colocar módulos y probablemente toda la documentación que haya leído le haya dicho que coloque sus módulos aquí.
(3) se utiliza para perfiles de instalación que requieren un módulo específico. Los perfiles de instalación son esencialmente una forma de definir un estado inicial personalizado para un sitio de Drupal. Por ejemplo, Drupal viene con dos perfiles de instalación integrados: Estándar, que incluye las funciones más utilizadas, y Mínimo, que solo incluye el mínimo necesario para que funcione un sitio de Drupal.
(4) es utilizado por el núcleo de Drupal. Si bien técnicamente puede agregar módulos aquí y estarán disponibles para todos los sitios, no debería hacerlo. Seriamente. La modules
carpeta se toca cuando se actualiza Drupal core, y causará problemas en el futuro si está pegando los módulos que necesita para que su sitio funcione allí.
Ahora que el fondo está fuera del camino, puede usar trucos del sistema de archivos para tener sus módulos alojados fuera de donde se ve Drupal.
Por ejemplo, puede configurar un enlace simbólico desde sites/all/modules
otro directorio fuera de la instalación de Drupal:
- En sistemas basados en Unix / Linux / BSD:
ln -s /path/to/modules/folder /path/to/drupal/sites/all/modules
- En Windows Vista / Server 2008/7 y superior:
mklink C:\path\to\drupal\sites\all\modules C:\path\to\custom\modules\folder
Que yo sepa, no hay mucho que puedas hacer en versiones anteriores de Windows que no tengan mklink .