我已经完成了几个教程,在Magento中添加自定义模块。我对Magento不是很熟悉,但我尝试在线跟踪这些步骤。 我正在使用Magento 1.7.0.2。 因此,为了添加客户模块,我将文件夹 Mehul / Helloworld 创建到 app / core / local 。
我的 Helloworld / etc / config.xml 是,
<?xml version="1.0" encoding="UTF-8"?>
<!-- The root node for Magento module configuration -->
<config>
<!--
The module's node contains basic
information about each Magento module
-->
<modules>
<!--
This must exactly match the namespace and module's folder
names, with directory separators replaced by underscores
-->
<Mehul_Helloworld>
<!-- The version of our module, starting at 0.0.1 -->
<version>0.0.1</version>
</Mehul_Helloworld>
</modules>
<!-- This node contains parameters, available on frontend -->
<frontend>
<!-- Module aliases are located in this block -->
<routers>
<!-- This node's name should be the same as our alias -->
<helloworld>
<!-- use parameter specifies which of basic routers needs to be used.
This can be "standard" for frontend or "admin" for backend -->
<use>standard</use>
<!-- router arguments block -->
<args>
<!-- This parameter specifies the full name of out module -->
<module>Mehul_Helloworld</module>
<!-- This parameter sets module alias -->
<frontName>helloworld</frontName>
</args>
</helloworld>
</routers>
</frontend>
</config>
我的 app / etc / Mehul_Helloworld.xml 是,
<?xml version="1.0" encoding="UTF-8"?>
<config>
<modules>
<Mehul_Helloworld>
<!-- Whether our module is active: true or false -->
<active>true</active>
<!-- Which code pool to use: core, community or local -->
<codePool>local</codePool>
</Mehul_Helloworld>
</modules>
</config>
我的控制器文件&#39; IndexController.php&#39; 进入 Helloworld / controllers 目录,
<?php
class Mehul_Helloworld_IndexController extends Mage_Core_Controller_Front_Action {
public function indexAction()
{
echo "Hello tuts+ World";
}
public function testAction()
{
echo "test action";
}
}
?>
我通过管理面板禁用了所有 catch ,我也刷新了它。 当我转到 System / Configuration / Advance 时,我可以看到我的模块已启用 但我试着看到我的控制器,
mysite.com/helloworld/index/index 和 mysite.com/helloworld/index/test 然后我收到一条404错误消息,说明找不到页面!
我现在该怎么办?
答案 0 :(得分:0)
嗨,有一个模块创建的在线工具对新人来说非常好。此工具将为您提供压缩文件。你可以尝试这个,看看你在做什么错误。
答案 1 :(得分:0)
你的文件结构看起来很奇怪。 它应该是app&gt;代码&gt;本地和应用&gt;等等&gt;模块。从任务描述我可以看到本地文件夹与etc文件夹在同一级别。请检查并修复。也尝试在&#34; local&#34;中使用小写。文件夹名称。
答案 2 :(得分:0)
我认为每件事都是正确的,但你输入的结构不正确。但是&#34; Mehul_Helloworld.xml&#34;文件应该在
&#34;应用程序的/ etc /模块/ Mehul_Helloworld.xml&#34;
而不是
&#34;应用程序的/ etc / Mehul_Helloworld.xml&#34;
。这可能是您的模块未注册的原因。
答案 3 :(得分:0)
app / etc / Mehul_Helloworld.xml 应为 app / etc / modules / Mehul_Helloworld.xml
您的代码必须进入
/应用程序/代码/本地/ MEHUL /的Helloworld /
答案 4 :(得分:0)
对不起伙计!!它工作正常,我输入错误的URL! 该URL应该是&#39; mysite.com/store/helloworld',因为我的magento安装在saperate商店目录而不是根目录。 我试图访问mysite.com/Helloworld。 我仔细查看了我的目录结构后才意识到这一点! 无论如何,谢谢你们的回复!