原文链接:http://drupal.org/node/176046
目录优先级
贡献的module和主题也可以放在/sites/sitename/modules/
和/sites/sitename/themes/
目录下。通常sitename都是“default”。
被放在那里的东西只能被相应站名的站点使用,然而放在/all/*
下的却可以在任何地方被使用。如果你只建立了一个站点,这个可能对你来说没有任何区别。但是当你为了个人用途开始修改你下载下来的代码,那么最好还是将你的修改和原始版本分开。
在网站上有任何一个module是两个不同版本是没问题的。安装程序会选择安装最匹配的那个(优先使用/sites/sitename/modules/
下的,然后是/sites/all/modules/
,最后是/sites/modules/
)。你可以利用这点去测试补丁,而不用破坏原始文件。
同样的,你可以把module放在任何/modules/
的子文件夹中。在你访问/admin/build/modules
页面的时候,他们都会被递归的查找到。你可以利用这个来管理你的module。
多站点考虑
这个步骤和如何配置多站点基本是一样的。不同的只是在那里放置modules和themes目录。如果你放在了/sites/all/
下面,那么任何使用相同代码库的站点都可以共享这些module和主题。
如果你希望限制某个特定站点不能使用一个module或主题,那就在那个站点的目录下创建一个modules/或themes/目录。
sites/example.com.site3/modules sites/example.com.site3/themes
站点自己的modules或themes目录下的任何文件,都不能被其他共享代码库的站点访问到。
安装配置文件
在/sites
目录下的module和主题优先于那些放置在安装配置文件中的。举例来说,你的安装配置文件“myprofile”中含有Views module,然后其他版本的Views放置在如下位置中:
- /sites/all/modules contains Views 7.x-3.0
- /sites/www.mysite.com/modules contains Views 7.x-3.x-dev
- /profiles/myprofile/modules contains Views 7.x-3.x-rc2
在这个脚本中,站点mysite.com会运行Views 7.x-3.x-dev。其他共享这个代码库的站点会运行Views 7.x-3.0,即使那些站点是使用“myprofile”这个安装文件建立的。