面对一个问题,我无法弄清楚我做错了什么。OpenCart 3.0.3.2。我稍微扩展了商店的功能。我在原始文件中完成了所有工作,一切都按我的意愿进行。我想熟悉 ocmod,我想使用修饰符来完成所有工作。目前,我将所有工作文件留在原处,仅删除了路径 admin/controller/extension/module/test.php 中的 1 个文件。如果你把它放回原处,那么我的名字,也就是说,模块将出现在 Extensions-> modules 中。
我做了什么:
创建了一个 zip 存档 test.ocmod。存档包含 install.xml 文件和上传文件夹。
在文件夹 upload/admin/controller/extension/module/ 中有一个我删除的 test.php 文件。对于测试,我想使用“安装程序”将其放回原处。
在 install.xml 文件中,这是:
<?xml version="1.0" encoding="UTF-8"?>
<modification>
<name>Test</name>
<code>test</code>
<version>1.0</version>
<link>test.test</link>
<author>Test</author>
<file path="catalog/view/theme/default/template/common/header.twig">
<operation>
<search><![CDATA[
{{ language }}
]]></search>
<add position="after"><![CDATA[
{{ test }}
]]></add>
</operation>
</file>
</modification>
安装非常好。安装历史记录中出现一个条目。在修改器和开发人员设置中,我更新了所有内容。
这就是问题本身:
修改列表中没有任何内容。在 Extensions-> modules - 什么都没有。在system/storage/modification路径上,除了系统文件夹和index.html文件外,什么也没有。
ocmod.log
2020-03-24 14:05:40 - MOD: Modification Default
FILE: system/engine/action.php
REGEX: ~(require|include)(_once)?\(([^)]+)~
LINE: 69
FILE: system/engine/loader.php
REGEX: ~(require|include)(_once)?\(([^)]+)~
LINE: 77
LINE: 151
LINE: 168
FILE: system/library/config.php
REGEX: ~(require|include)(_once)?\(([^)]+)~
LINE: 59
FILE: system/library/language.php
REGEX: ~(require|include)(_once)?\(([^)]+)~
LINE: 67
LINE: 73
FILE: system/library/template/template.php
REGEX: ~(require|include)(_once)?\(([^)]+)~
LINE: 18
FILE: system/library/template/twig.php
CODE: $loader = new \Twig_Loader_Filesystem(DIR_TEMPLATE);
LINE: 19
----------------------------------------------------------------
我认为这是因为我没有将存储文件夹移到站点目录之外。我刚把这个文件夹拿出来,又下载了存档,但是修改文件夹里除了系统文件夹和文件什么都没有。
如果将修改器文件放在 System 文件夹中,则会应用更改。但我想处理通过安装程序下载档案。
我不知道该尝试什么。我读到错误配置的 FTP 存在问题,在 Opencart 2 上我看到了这个选项卡,但在 OpenCart 3 上我没有看到它。请告诉我,我做错了什么,或者可能是什么问题?