如何在管理端(Opencart)的产品详细信息页面上添加自定义选项卡

时间:2016-07-11 13:25:02

标签: php opencart opencart2.x opencart-module

我在opencart有一家商店。

我只需要在产品详细信息部分中添加自定义字段,请参阅屏幕截图,您将获得这个想法。

enter image description here

它应该像其他标签一样。

我不想直接更改product_form.tpl核心文件,因为我正在开发opencart扩展。

3 个答案:

答案 0 :(得分:1)

使用OCmod -

在产品编辑表单中添加新标签页
  1. 创建新文件并复制到其中的代码下方。使用扩展名.ocmod.xml保存此文件(example - addtab.ocmod.xml)

    <modification>
    <name>Add tab</name>
    <version>1.0</version>
    <link>test</link>
    <author>test</author>
    <code>add_tab_to_product</code>
    
    <file path="admin/view/template/catalog/product_form.tpl">
    <operation>
    <search><![CDATA[<li><a href="#tab-design" data-toggle="tab"><?php echo $tab_design; ?></a></li>]]></search>
    <add position="after"><![CDATA[<li><a href="#tab-shipping" data-toggle="tab"><?php echo $tab_shipping; ?></a></li>]]></add>
    </operation>
    <operation>
    <search><![CDATA[<div class="tab-pane" id="tab-design">]]></search>
    <add position="before"><![CDATA[<div class="tab-pane" id="tab-shipping">Write contents of tab Shipping here...</div>]]></add>
    </operation>
    </file> 
    
    <file path="admin/controller/catalog/product.php">
    <operation>
    <search><![CDATA[$data['tab_design'] = $this->language->get('tab_design');]]></search>
    <add position="after"><![CDATA[$data['tab_shipping'] = $this->language->get('tab_shipping');]]></add>
    </operation>
    </file>
    
    </modification>
    
  2. 转到扩展程序&gt;扩展程序安装程序,单击上传按钮并上传保存的文件。

  3. 检查修改列表中是否存在并启用了扩展名。刷新缓存(扩展&gt;修改&gt;刷新缓存)。

  4. 刷新页面,您将在产品编辑表单中看到送货标签。

    使用OpenCart 2.1.x进行测试

答案 1 :(得分:0)

阿基,

如果您使用的是opencart2.x,那么您将使用ocmod在product_form.tpl上创建自定义选项卡以及控制器和模型文件。您不想更改opencart的核心文件。因此,当您更新opencart时,您的文件数据不会丢失。

OCMOD参考

  1. https://github.com/opencart/opencart/wiki/Modification-System
  2. http://ocextensions.co.uk/ocmod/ocmod
  3. 如果您没有使用opencart2.x,那么您将使用vqmod创建扩展名。

答案 2 :(得分:0)

当你忘记将tab_shipping添加到&#34; admin / language / en-gb / en-gb.php&#34时,还有一点。文件。它现在的方式将起作用,但会显示&#34; tab_shipping&#34;在标签上而不是送货。

<?xml version="1.0" encoding="UTF-8"?>
<modification
            xmlns="https://github.com/vqmod/vqmod"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="https://github.com/vqmod/vqmod https://raw.githubusercontent.com/vqmod/vqmod/master/vqmod.xsd">
            >
    <id>Add Shipping tab Product Page</id>
    <version>1.0</version>
    <vqmver>2.X</vqmver>
    <author>Your Name</author>
    <code>add_tab_to_product</code> 
    <file path="admin/view/template/catalog/product_form.tpl">
        <operation>
            <search><![CDATA[<li><a href="#tab-design" data-toggle="tab"><?php echo $tab_design; ?></a></li>]]></search>
            <add position="after"><![CDATA[<li><a href="#tab-shipping" data-toggle="tab"><?php echo $tab_shipping; ?></a></li>]]></add>
        </operation>
        <operation>
            <search><![CDATA[<div class="tab-pane" id="tab-design">]]></search>
            <add position="before"><![CDATA[<div class="tab-pane" id="tab-shipping">Write contents of tab Customize here...</div>]]></add>
        </operation>
    </file> 

    <file path="admin/controller/catalog/product.php">
        <operation>
            <search><![CDATA[$data['tab_design'] = $this->language->get('tab_design');]]></search>
            <add position="after"><![CDATA[$data['tab_shipping'] = $this->language->get('tab_shipping');]]></add>
        </operation>
    </file>

    <file path="admin/language/en-gb/en-gb.php">
        <operation>
            <search><![CDATA[$_['tab_design']                    = 'Design';]]></search>
            <add position="after"><![CDATA[$_['tab_shipping']                    = 'Shipping';]]></add>
        </operation>
    </file>
</modification>