2

我正在编写 VQMod XML 以在 opencart 中编辑 config.php,我在 XML 下方编写并将其保存在 XML 文件夹中。

<modification>
<id>VQMOD CORE FOR OPENCART - DO NOT REMOVE</id>
<version>1.4.x and 1.5.x</version>
<vqmver>2.2.1</vqmver>
<author>Senthil</author>
<file name="./config.php">
    <operation>
         <search position="after"><![CDATA[
                    define('DB_PREFIX', 'op');
                    ]]></search>
         <add><![CDATA[
                    define('HTTP_IMAGE_2', 'http://localhost/opcart/image/');
                    define('HTTPS_IMAGE_2', 'http://localhost/opcart/image/');
                    define('DIR_IMAGE_2', '/Users/[username]/Sites/opcart/image/');
                    ]]></add>
    </operation>
</file>

但它没有像为其他文件那样在 vqcache 文件夹中创建新的缓存文件。日志文件中没有错误。我对 vqcache 文件夹和配置文件有写权限。任何帮助都会很有用。

4

2 回答 2

3

vQmod 不适用于这些文件。它基本上适用于 index.php 文件夹上方的所有 php/tpl 文件(即更深的 1 个或更多个文件)

于 2013-01-17T21:53:38.890 回答
0

是的,这是可能的。您可以在访问文件的任何地方使用 VQMod,只要该文件存在“触摸”逻辑链并且没有 rogue requires。在这种情况下,这在开发实例之外是半未经测试的,并且使配置可修改涉及“安全”风险。

为此,您只需编辑 index.php(和 admin/index.php)。将以下内容移动到 index.php 的顶部(在定义 VERSION 下),使其位于检查 config.php 之前:

// VirtualQMOD
require_once('./vqmod/vqmod.php');
VQMod::bootup();

然后改变OC拉config.php的方式:

require_once('config.php');

通过添加检查模块:

require_once(VQMod::modCheck('config.php'));

访问您的目录/管理员以便 VQ 可以构建,然后检查 /vqmod/vqcache 文件:

vq2-config.php

如果它在那里,并且您的更改在其中,则成功。

PS:你可以<file name="config.php">在你的 XML 文件中使用,不需要相对的./.

于 2016-01-14T16:08:12.947 回答