Joomla插件通过渗透现有模块或组件来添加新功能

时间:2014-07-03 22:04:42

标签: php joomla joomla2.5 joomla3.0 joomla-extensions

是否有可能 - 以及正确的方法 - 创建一个向现有模块或组件广告新功能的Joomla 3插件。我已经对一些流行的组件和模块进行了一些小的但有用的UI功能更改,我将与其他人共享。我认为编辑源代码不是方法,插件最好。谢谢!

2 个答案:

答案 0 :(得分:2)

是的,它可能的Joomla插件就是为此而设计的,

您可以使用Joomla plugin事件向现有组件或模块添加更多功能。

有许多扩展使用此概念,例如扩展默认用户组件com_userscom_virtuemart等。

如果您使用的是UI功能,我认为System plugin可以帮助您解决难题

例如,我使用Product Zoom facilitycom_virtuemart创建了一个新功能,它使用系统插件事件。

希望它有意义......

答案 1 :(得分:1)

非常确定没有“正确的方法”来做到这一点,因为Joomla旨在只允许你覆盖视图而不是模型。

(如果您不知道如何操作 - 将组件视图的default.php文件复制到模板/ templates / yourtemplate / html / com_componentname / viewname / default.php。)

然而,有人写了这篇文章以允许你覆盖模型 - http://extensions.joomla.org/extensions/style-a-design/templating/15611。下载他们的代码并查看它可能会给你一个hacky方法。

然而,他们使用eval表明它远远超出了Joomla框架。

您可以挂钩插件的事件列表在这里: http://docs.joomla.org/Plugin/Events - 您可以在任何这些点搜索和替换变量和输出,但这并不是真正“渗透现有模块或组件”,因为它将在加载的组件之外发生。

相关问题