9.1. 模块结构

PHP-Nuke 模块是用 PHP 编写的应用程序,用于管理网站的核心部分。例如,“新闻”、“论坛”、“会员列表”等等都是模块。每个模块根据其复杂性进行结构化,一部分面向用户,另一部分面向管理员,在这种情况下,我们需要修改一些内容。所有这些都由 modules.php 文件管理,该文件单独执行模块的身份验证和访问权限管理工作。modules.php 文件检查并验证模块是否已激活,并验证访问权限。这为我们节省了大量工作,因为我们不必在我们创建的每个模块中插入这些控件。

为了更详尽地了解,请参考第 6.3 节的内容。

例如,在 avantgo 模块中,为了加载 index.php 文件,只需将模块名称传递给参数字符串,要搜索的文件就是 index.php。

modules.php?name=AvantGo

相反,如果我们想调用一个与默认 index.php 不同的页面(例如,print.php),那么我们需要传递的字符串是

modules.php?name=AvantGo & file=print

即 file 变量,其值(print)对应于我们要加载的文件名,但不带 .php 扩展名。

在 modules/nameofmodule 文件夹内,还有一个名为 "language" 的子文件夹。通过这种方式,我们可以简单直接地管理模块内部的多语言功能。

modules.php 文件的运行方式如下