0

我正在尝试在 opencart 中重定向主页目录/控制器/common/home.php。在 php 文件中,此行之后 public function index() { 和此行之前 $this->config->get('config_meta_title')); 当我添加 $this->response->redirect($this->url->link('product/product', 'product_id=50')); 当用户访问 opencart 主页时,它会重定向并工作。我需要创建 OCMOD 文件来实现相同的目的,而无需修改此 php 文件中的核心代码。我也不想使用 htaccess 重定向。我尝试了下面的代码但没有工作。我对 XML 或 PHP 的了解并不多。因此请帮忙。我尝试的 OCMOD 代码如下:

<name>Product page as home page</name>
<id>Product page as home page</id>
<version>1.0.0</version>
<code>Product page as home page</code>
<author>test</author>
<link>#</link>  

<file path="catalog/controller/common/home.php">
    
             <operation>
        <search><![CDATA[if (isset($this->document->setTitle($this->config->get('config_meta_title'));'])) {]]></search>
        <add position="before"><![CDATA[
    $this->response->redirect($this->url->link('product/product', 'product_id=50'));
        ]]></add>
    </operation>
</file>

请帮忙。感谢和问候 VSR

4

1 回答 1

0

那里不是ocmod。这是vqmod。OCMOD在这里:

<?xml version="1.0" encoding="UTF-8"?>
<modification>
<name>Product page as home page</name>
<version>1.0.0</version>
<code>Product page as home page</code>
<author>test</author>
<link>#</link>  

<file path="catalog/controller/common/home.php">
    
    <operation>
        <search><![CDATA[if (isset($this->document->setTitle($this->config->get('config_meta_title'));'])) {]]></search>
        <add position="before"><![CDATA[
    $this->response->redirect($this->url->link('product/product', 'product_id=50'));
        ]]></add>
    </operation>
</file>
</modification>

并仔细检查 ocmod 搜索标签中的字符串...if (isset($this->document->setTitle($this->config->get('config_meta_title'));'])) {是否正确?似乎字符串不正确。

编辑关于您的评论:

 <?xml version="1.0" encoding="UTF-8"?>
    <modification>
    <name>Product page as home page</name>
    <version>1.0.0</version>
    <code>Product page as home page</code>
    <author>test</author>
    <link>#</link>  
    
    <file path="catalog/controller/common/home.php">
    
        <operation>
            <search><![CDATA[public function index() {]]></search>
            <add position="after"><![CDATA[
        $this->response->redirect($this->url->link('product/product', 'product_id=50'));
            ]]></add>
        </operation>
    </file>
    </modification>
于 2021-02-15T08:31:01.320 回答