Joomla!模块、组件、插件联系与区别(详细)

4.5.1.三者联系

 

如果把Joomla!系统看作一栋大楼,组件就是构成大楼的“墙”。菜单项则是“墙”的具体名称。模块就像挂在“墙“上的“画框”。插件则是可以随意“钉”在“墙”和“框”里的钉子。有了菜单项代表组件(墙),则模块要显示在某页面(组件),就很方便了:直接指定该模块出现在代表该页面的菜单项。详细操作如下。

进入该模块管理界面,在“菜单分配”选项列表中,选中要显示模块的菜单项,该模块就显示在该菜单项代表的页面了。如图4.73所示。这模块出现在该菜单项所对应的页面了。

 

 

图4.73 模块管理界面“菜单分配”选项

插件和组件、模块的关系是嵌入式的,基于事件驱动的。举个例子来理解,显示文章列表的模块,需要在每篇文章名前都加上一个图标。要实现这个功能,既可以修改模块程序来完成,也可考虑开发插件(或者安装第三方插件),在显示文章列表前加一个图标。

以上对组件,模块,插件做了形象的讲解。在Joomla!系统中如何知道页面由何种组件形成呢?可以从网址链接分辨组件的类型。因为网页实际是组件实现的。例如,从文章列表的网址中找到“option=”,则后面的参数就表明该组件类型。 如图4.74所示。

 

http://localhost/joomla/index.php?option=com_content&view=category&id=29&Itemid=18
com_content

 

文章列表的网址
组件类型

 

http://localhost/joomla/index.php?option=com_content&view=category&id=29&Itemid=18
com_content

 

文章列表的网址
组件类型

 

图4.74 从url分辨组件类型

知道如何分辨组件类型了,如何知道页面调用何种模块呢?就要双管齐下了:

(1)获知模块在前台页位置。前台页除了形成该页组件显示内容外,其他的显示就是由模块形成的。要查找显示块对应模块,先找到该模块在页面的位置。

(2)后台根据位置查找模块。登陆管理后台,单击导航“扩展→模块管理”,单击位置筛选栏,根据(1)里模块的大概位置进行筛选,找出模块。

如何知道系统使用了何种插件呢?插件基于事件驱动,而且嵌入在组件和模块中,从外观判断,比较难于分辨,所以这部分内容在插件讲解的一章会继续探讨。

 

4.5.2.组件适用范围

组件适用于如下情况。

(1)Joomla! 前台的功能页面。

单击前台导航栏“方案&案例”进入“CMS”分类的文章列表页面,该页面就是文章组件(com_content)实现的。页面如图4.75所示。该页面除了主要的文章列表,还有导航模块,登陆模块,在下面模块适用范围中会继续讨论。

 

 

图4.75 com_content组件实现的文章列表页面

 

(2)后台管理界面管理功能模块

后台中每一项管理功能都是由组件来实现的。下面举例说明。

单击后台导航栏“内容→文章管理”进入

4.5. 3模块适用范围

在Joomla!页面某位置添加显示一些内容。

4.5.4.插件适用范围

对Joomla!模块或页面显示进行修改,或增加额外功能,又不希望对模块,组件代码有所影响。

 

 

二、Joomla!模块、组件、插件的使用范围

对Joomla有一定使用的人都知道Joomla!模块、组件、插件是我们的热门词汇。这些模块、组件、插件的区别和联系就需要根据具体情况具体对待,总之,综合使用了这些Joomla模块、组件、插件会让我们的CMS更强大,更完善,更实用,更人性化。

Joomla组件使用范围

(1)Joomla前台功能展示页面.(位置:/components/com_ )

(2)Joomla后台可视化功能管理页面.(位置:/administrator/components/com_ )

举个例子来说:当我们按照了一个网站地图组件之后,就会在我们的项目根目录下生成components/com_xmap用于前台网站地图功能展示,同时 会在我们的根目录下生成administrator/components/com_xmap用于后台网站地图功能管理。

Joomla模块使用范围:在Joomla!前台页面添加显示内容,比如前台会员登录模块、前台搜索模块、前台面包屑导航等等。

Joomla插件使用范围:对Joomla!模块或页面显示进行修改,或增加额外功能,又不希望对现有模块组件代码有所影响,而且必须是建立在现有模块、组件之上。

当我们熟悉了Joomla模块、组件、插件的使用范围之后,相信我们会更轻松地、快速地通过操作Joomla可视化的后台管理来实现我们项目中所需要的前台展示效果!