Перш ніж відповісти, корисно ознайомитись з тим, як Drupal знаходить модулі. Drupal використовує список пропозицій з кореня Drupal, щоб визначити, де знайти модулі. У порядку пріоритетності:
sites/$SITENAME/modules
sites/all/modules
profiles/$INSTALLPROFILE/modules
modules
Якщо Drupal не знайде модуля в (1) , він перевіряє (2) . Якщо його там немає, він перевіряє (3) тощо.
Для (1) , якщо ви просто використовуєте основну, односайтову установку Drupal, $SITENAME
є default
. Інакше:
- В Drupal 6
$SITENAME
- ім'я хоста сайту. Якщо ваш сайт знаходиться за адресою example.com
, $SITENAME
буде example.com
.
- У Drupal 7,
$SITENAME
визначений в sites/sites.php
. Якщо ви подивитесь example.sites.php
, ви можете побачити, як це визначити. Важливо також зазначити, що будь-який перелічений там модуль може бути корисним лише для конкретних сайтів, а не для всіх сайтів.
У (2) будь-який знайдений там модуль буде корисним на будь-якому сайті інсталяції Drupal. Він також залишиться недоторканим під час оновлення основної установки. Це, звичайно, рекомендоване місце для розміщення модулів і, ймовірно, вся документація, яку ви прочитали, сказала вам, щоб ви розміщували тут свої модулі.
(3) використовується для встановлення профілів, які потребують конкретного модуля. Профілі встановлення по суті є способом визначення користувальницького початкового стану для сайту Drupal. Наприклад, Drupal поставляється з двома вбудованими профілями інсталяції: Стандартний, який включає найбільш часто використовувані функції, і Мінімальний, який включає лише мінімальний мінімум, необхідний для роботи сайту Drupal.
(4) використовується ядром Drupal. Хоча ви можете технічно додавати сюди модулі, і вони будуть доступні для всіх сайтів, ви не повинні. Серйозно. Під modules
час оновлення ядра Drupal ця папка зачіпається, і це спричинить проблеми, якщо ви наклеюєте модулі, щоб ваш сайт працював там.
Тепер, коли фон не в змозі, ви можете використовувати хитрості файлової системи, щоб розмістити свої модулі поза тим, де виглядає Drupal.
Наприклад, ви можете встановити символічне посилання з sites/all/modules
іншого каталогу поза установкою Drupal:
- У системах на базі Unix / Linux / BSD:
ln -s /path/to/modules/folder /path/to/drupal/sites/all/modules
- У Windows Vista / Server 2008/7 та новіших версій:
mklink C:\path\to\drupal\sites\all\modules C:\path\to\custom\modules\folder
Наскільки мені відомо, у більш ранніх версіях Windows, що не мають mklink, ви не можете багато чого зробити .