作者:孟庆旭M | 来源:互联网 | 2023-09-16 10:02
九、附录 A:你好,Magento
下面的示例将向您简要介绍创建 Magento 扩展的过程。我们将创建一个简单的 Hello World 模块,它将允许我们显示 Hello World!当我们访问商店中的特定 URL 时发送消息。
配置
在 Magento 中创建裸骨骼扩展至少需要两个文件:config.xml
和模块声明文件。让我们继续创建每个文件。
第一个文件用于向 Magento 声明模块;没有此文件,Magento 将无法识别任何扩展文件。
文件位置为app/etc/modules/Mdg_Hello.xml
。请参阅以下代码:
true
local
第二个 XML 文件名为config.xml
;它用于指定所有扩展配置,例如管线、块、模型和帮助器类名。在我们的示例中,我们将只使用控制器和路由。
让我们用以下代码创建配置文件。
文件位置为app/code/local/Mdg/Hello/etc/config.xml
。请参阅以下代码:
0.1.0
Mdg_Hello
hello
我们的扩展现在可以由 Magento 加载,您可以在系统配置高级的 Magento 后端启用或禁用我们的扩展。
控制器
Magento 的核心是一个模型视图控制器(MVC框架。因此,为了使我们的新路线发挥作用,我们必须创建一个新的控制器,该控制器将响应此特定路线。为此,请执行以下步骤:
- 导航到扩展根目录。
- 创建一个名为
controllers
的新文件夹。
- 在
controllers
文件夹中,创建一个名为IndexController.php
的文件。
复制以下代码(文件位置为app/code/local/Mdg/Hello/controllers/IndexController.php
:
php
class Mdg_Hello_IndexController extends Mage_Core_Controller_Front_Action
{
public function indexAction()
{
echo ‘Hello World this is the default action’;
}
}
测试路线
现在我们已经创建了我们的路由器和控制器,我们可以打开http://magento.localhost.com/hello/index/index
进行测试,我们应该看到下面的屏幕截图:
默认情况下,Magento 将使用索引控制器和索引操作作为每个扩展的默认值。因此,如果我们转到http://magento.localhost.com/hello/
,我们将看到相同的屏幕。
为了结束我们对 Magento 模块的介绍,让我们为控制器添加一条新路径:
- 导航到扩展根目录。
- 打开
IndexController.php
。
复制以下代码(文件位置为app/code/local/Mdg/Hello/controllers/IndexController.php
:
```php
class Mdg_Hello_IndexController extends Mage_Core_Controller_Front_Action
{
public function indexAction()
{
echo ‘Hello World this is the default action’;
}
public function developerAction()
{
echo ‘Hello Developer this is a custom controller action’;
}
}
```
最后让我们进行测试,进入http://magento.localhost.com/hello/index/developer
加载新的动作路线,如下图所示: