Есть у товара поле «Теги товара», которые хранится в таблице oc_product_description БД в виде поля «tag», и «приезжает» в шаблон product.tpl в виде переменной $tags[0]['tag']. Требуется (не спрашивайте зачем) создать для товара в админке еще одно такое же поле, где будет храниться сходная информация, и которое должно «приезжать» в тот же шаблон product.tpl в виде отдельной переменной. Если кто хорошо «копал» движок, где соответствующие куски кода искать? Движок OpenCart 2.3.0.2. Заранее спасибо.
Чаще всего в качестве дополнительных используются неиспользуемые поля типа MPN, UPC и т.п. Остаётся только вывести их на страницу товара. На форуме есть инструкции. А в некоторых шаблонах их можно вывести и из настроек шаблона.
Да, можно и готовые пустые поля юзать, весь вопрос, где обработчик, который их из базы достает. Вы б ссылку кинули, если "На форуме есть инструкции". Заранее спасибо.
Да, можно и готовое пустое поле использовать, весь вопрос, где обработчик, который из базы в шаблон достает. Если можно, скиньте ссылку на "информации много тут на форуме", банально в лом весь движок "разбирать" из за одного доп. значения. Заранее спасибо.
Вы удивитесь, но обычно "обработчик" лежит в директории controller с тем же путем, что и вьювер, и имеет такое же имя. То есть, для ...../product/product.tpl это будет controller/product/product.php
Банально лень искать по форуму. Вот что первое нашел https://forum.opencart-russia.ru/th...u-upc-v-kartochke-tovara-ili-esche-gde-to.36/ https://forum.opencart-russia.ru/threads/vyvesti-sku-v-kataloge-oc-3-0.9253/#post-67570 Но ведь есть еще и документация и инструкции всякие. Все же придется изучить принципы, чтобы хоть как то ориентироваться в движке.
Код: <file path="admin/model/catalog/product.php"> <operation> <search><![CDATA[ tag = '" . $this->db->escape($value['tag']) . "', ]]></search> <add position="replace"><![CDATA[ tag = '" . $this->db->escape($value['tag']) . "', tag1 = '" . $this->db->escape($value['tag1']) . "', ]]></add> </operation> <operation> <search><![CDATA[ 'tag' => $result['tag'] ]]></search> <add position="replace"><![CDATA[ 'tag' => $result['tag'], 'tag1' => $result['tag1'] ]]></add> </operation> </file> <file path="admin/view/template/catalog/product_form.twig"> <operation> <search><![CDATA[ <input type="text" name="product_description[{{ language.language_id }}][tag]" value="{{ product_description[language.language_id] ? product_description[language.language_id].tag }}" placeholder="{{ entry_tag }}" id="input-tag{{ language.language_id }}" class="form-control"/> ]]></search> <add position="after" offset="2"><![CDATA[ <div class="form-group"> <label class="col-sm-2 control-label" for="input-tag1{{ language.language_id }}"><span data-toggle="tooltip" title="{{ help_tag }}">{{ entry_tag }}</span></label> <div class="col-sm-10"> <input type="text" name="product_description[{{ language.language_id }}][tag1]" value="{{ product_description[language.language_id] ? product_description[language.language_id].tag1 }}" placeholder="{{ entry_tag }}" id="input-tag1{{ language.language_id }}" class="form-control"/> </div> </div> ]]></add> </operation> </file> Вы бы с задачей определились. MPN и тд это обычные поля, tag, мультиязычное.