0

我尝试了那里的所有教程,但我仍然无法让自定义创建的模块在 Magento 中工作。

这是我在服务器上创建 XML 文件以告诉 Magento 模块是什么的路径:

应用程序/etc/modules/Multiplies_HelloWorld.xml

<?xml version="1.0"?>
  <config>
    <modules>
       <Multiplies_HelloWorld>
          <active>true</active>
          <codePool>local</codePool>
       </Multiplies_HelloWorld>
    </modules>
 </config>

这是模块路径:

应用程序/代码/本地/乘法/HelloWorld/etc/config.xml

<?xml version="1.0"?>
<config> 
   <modules>
     <Multiplies_HelloWorld>
       <version>0.0.1</version>
     </Multiplies_HelloWorld>
   </modules>
</config>

当我进入系统/配置/高级时,我看到了一大堆除我之外的其他模块。

我试图刷新现金,禁用它,手动清除它,重新启动浏览器,重新登录但我的列表中仍然没有模块。

我使用的版本是 magento 1.7.0.2(免费)

我使用 FileZilla 上传文件。

任何建议将不胜感激。

4

2 回答 2

1

这可能有点晚了,但我只是遇到了同样的问题。

下巴挠了 20 分钟后,我尝试重置所有缓存(系统 > 缓存管理),然后它弹出了!

我在大量开发模块时禁用了“配置”缓存。我认为这将有助于减少摩擦。

于 2015-07-01T06:18:55.820 回答
0
  1. 确保你etc/module.xml看起来像这样:
<?xml version="1.0" ?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
    <module name="OrgName_ModuleName" setup_version="1.0.0">
    </module>
</config>
  1. 确保你composer.json有这个:
  "autoload": {
    "files": [
      "registration.php"
    ],
    "psr-4": {
      "OrgName\\ModuleName\\": ""
    }
  }
  1. 确保你registration.php看起来像这样:
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
    \Magento\Framework\Component\ComponentRegistrar::MODULE,
    'OrgName_ModuleName',
    isset($file) && realpath($file) == __FILE__ ? dirname($file) : __DIR__
);
  1. 如果您的模块包含在 magento 根目录之外的符号链接目录中(当您"path":在 composer 中使用 local 作为模块的存储库描述时发生),您必须允许 magento 用于符号链接:bin/magento config:set dev/template/allow_symlink 1. 有关更多信息,请参阅https://magento.stackexchange.com/a/315525/88882
于 2021-02-05T23:25:44.160 回答