2015-02-24 49 views
2

我在OpenCart的論壇上問過這個問題,但沒有得到任何答案,所以我試着在這裏問它,並希望得到一個很好的答案:)。ocmod,替換控制器Opencart 2.0.1.1

好吧,讓我們來看看我的問題。我試圖刪除管理員中產品頁面上產品名稱的必填字段。這是因爲如果你有一個多語言安裝,但只想爲1種語言命名產品,如果你不用每種語言命名它,都會出錯(是的,這很愚蠢)。

好吧。我知道如何做到這一點,並希望使用新的OCMOD。我已經在覈心文件「live」中對它進行了測試,並且它的工作方式與它應有的一樣。但是當我在ocmod xml文件中實現它時,它不想工作。

 <file path="admin/view/template/catalog/product_form.tpl"> 
     <operation> 
     <search><![CDATA[ 
        <div class="form-group required"> 
        <label class="col-sm-2 control-label" for="input-name<?php echo $language['language_id']; ?>"><?php echo $entry_name; ?></label>]]></search> 
     <add position="replace"><![CDATA[ 
        <div class="form-group"> 
        <label class="col-sm-2 control-label" for="input-name<?php echo $language['language_id']; ?>"><?php echo $entry_name; ?></label> 
]]></add> 
     </operation> 
    </file> 

    <file path="admin/controller/catalog/product.php"> 
     <operation> 
     <search><![CDATA[ 
     foreach ($this->request->post['product_description'] as $language_id => $value) { 
     if ((utf8_strlen($value['name']) < 3) || (utf8_strlen($value['name']) > 255)) { 
      $this->error['name'][$language_id] = $this->language->get('error_name'); 
     } 

     if ((utf8_strlen($value['meta_title']) < 3) || (utf8_strlen($value['meta_title']) > 255)) { 
      $this->error['meta_title'][$language_id] = $this->language->get('error_meta_title'); 
     } 
     } 
]]></search> 
     <add position="replace"><![CDATA[ 

]]></add> 
     </operation> 
    </file> 


    <file path="admin/controller/setting/setting.php"> 
     <operation> 
     <search><![CDATA[ 
     if (isset($this->error['name'])) { 
     $data['error_name'] = $this->error['name']; 
     } else { 
     $data['error_name'] = ''; 
     } 
]]></search> 
     <add position="replace"><![CDATA[ 

]]></add> 
     </operation> 
    </file> 

我希望這裏有人能幫我解決我的小問題。所有應該工作正常,但不知何故,這對我不起作用。

回答

0

我有同樣的問題,我做什麼(作爲一個醜陋的解決方法),而我得到的答案或找到正確的方法是單行的搜索索引,如:

<search index="131"><![CDATA[ 
    } 
]]></search> 

因此,而不是搜索:

<search><![CDATA[ 
    <div class="form-group required"> 
     <label class="col-sm-2 control-label" for="input-name<?php echo $language['language_id']; ?>"><?php echo $entry_name; ?></label> 
]]></search> 

您可以使用類似:

<search index="X"><![CDATA[ 
    <div class="form-group required"> 
]]></search> 

記住,指數是根據0,還有日誌中的行號。

+0

感謝您的幫助! *豎起大拇指* – 2015-04-25 18:57:16