2011-02-08 34 views
3

这让我疯狂!我想在网站主页上添加一个简单的联系表单。我无法解决是否需要构建模块,小部件或插件。他们中没有一个看起来很对! 模块似乎只能作为独立页面使用,例如现有的联系人模块。小部件似乎只显示数据(从数据库或某种Feed获取,例如Twitter),而插件似乎就像一个库类。 我需要的是最像一个模块。我需要一个控制器(显示正确的视图并根据表单是否已提交来处理来自表单和视图的数据。) 我的问题是我无法弄清楚如何将模块包含为页面(就像你一个widget),而不是在它自己的权利的页面。Pyrocms模块或插件或插件

回答

7

任何那些将工作。

模块是一个MVC的可以与URL进行交互,表明观点,有其自己的模型,助手,配置等模块是完整的肉和双veg

一个小工具只是一个独立的智能部分,这意味着它需要从每个实例控制面板的几个选项并吐出一大块HTML。

插件只是一个标签。这个标签被用在模板,页面,新闻,任何东西,并吐出一大块HTML。一个插件可以在类中有多种方法,每种方法都会是一个不同的标签。

我实际上已将所有这些类型的插件作为联系表单,但我已经为PyroCMS v1.1解决的问题是modular plugin。这意味着有模块的视图,模型等,但是我们可以跳过控制器,只是制作一个插件。

即插件最多匹配标记:

{pyro:contact:form} 

这是因为它是触头模块中,并且该方法是形式。看到? :)

+0

哈!感谢菲尔,我希望你能回答!这为我清除了很多东西。在我看到您的答案之前,我实际上已经完成了将联系人模块背后的基本逻辑转换为小部件,方法是在display.php文件中添加一个简单测试,以查看邮件是否已发送。我刚刚查看了你的联系人插件的代码,它几乎完全相同。我想这就是让ci如此伟大的原因?!?! – musoNic80 2011-02-09 16:20:34