无论 CMS 多么出色,有时您需要满足的特定需求根本无法开箱即用。在这里,我们将探索为 ExpressionEngine 创建插件来满足此类需求。
版本说明
最近,ExpressionEngine 的创建者 EllisLab 宣布 ExpressionEngine 2.0 的正式发布日期为 2009 年 12 月 1 日。请注意,本教程是根据 1.6.x 版本的详细信息编写的。 2.0 版本中的某些细节(例如文件路径和全局对象)将发生变化。虽然这些细节会有所不同,但 ExpressionEngine 插件创建的一般应用程序和方法将保持不变。
ExpressionEngine 插件的类型
与大多数可用的强大管理系统一样,ExpressionEngine 或“EE”为开发人员提供了多种方法来添加默认情况下可能不存在的功能。与 WordPress 等流行系统不同,EE 对这些附加组件有不同的名称,具体取决于它们与您的网站交互的方式。您可以通过三种主要方式向 EE 1.6.x 添加功能,即插件、扩展和模块。插件主要处理修改模板代码,并且往往更像是前端工作。扩展通常通过绑定到系统中的“挂钩”来调整后端或控制面板的功能。模块的范围往往更大,在控制面板中有自己的区域,也可以在 EE 网站的前端使用。模块可以是位于 EE 中并利用会员资格、模板、数据库等的成熟应用程序。
所需经验
在继续之前了解一些肯定会有所帮助的事情:
- 如何在开发环境中设置和安装 ExpressionEngine
- 基本了解 ExpressionEngine 的控制面板和模板解析
- 对 PHP 和面向对象编程有基本了解
- 如何阅读文档!
我们的插件
在本教程中,我们将创建一个简单的插件,用于扫描传递给它的数据并使用 HTML 标签包装某些字符串。这是一个非常简单的 EE 插件应用程序,应该向您展示插件开发入门是多么容易。我们的插件将用于搜索和替换我们作为开发人员使用的首字母缩略词。为了举例,我们将坚持使用三个:HTML、CSS 和 RSS。我们将该插件命名为“Auto Acronym”。
我从哪里开始?
EE 附加组件开发的最佳起点是官方 ExpressionEngine 文档。在深入开发 ExpressionEngine 之前,您应该阅读他们的指南,如果遵循这些指南,将有助于保持系统良好运行。该指南涵盖命名约定、性能和安全性等内容。我将给您几分钟时间阅读 ExpressionEngine 附加开发指南
好的,现在您已经阅读了我们可以开始了解如何实际创建插件以及简单插件的组成部分。
拼图的碎片
每个插件都需要一个类和至少一个函数。命名约定非常具体,因此我们需要确保正确且仔细地进行命名。我们的插件的名称是 Auto Acronym,它与我们的文件名、类名和 EE 标签一起发挥作用。文件名采用插件的名称,并用下划线替换所有空格,同时在前面添加“pi”。到前面。所有字母必须小写。这将使我们的文件名为“pi.auto_acronym.php”。所有 EE 插件都进入位于 system/plugins 下的单个目录(想象一下)。
类名与文件名类似,只是第一个字母大写。这使得我们的类名称为“Auto_acronym”。该插件只需要一个函数,因此它将与类具有相同的名称。这些也将是我们在 EE 插件标签中使用的名称。插件标签总是以“exp:”开头,它告诉模板解析器,“嘿!我需要在这里进行一些处理!”。接下来是您的班级名称,全小写,给我们:“exp:auto_acronym”。插件标签的第三段调用插件类中的函数。在我们的示例中,我们将只使用一个函数,即构造函数,因此我们只需要类名。到目前为止,我们对插件的了解如下:
将其写入代码
让我们看看到目前为止我们的代码是什么:
和
This is where our simplified documentation will go