Добрый день. Я новичок, стараюсь самостоятельно разобраться, но сейчас в тупике.
Нужно добавить поле описания для дополнительных изображений товара во вкладке "изображения".
Что я сделал. В admin\model\catalog\product.php строка 76 и 222 вставил:
if (isset($data['product_image'])) {
foreach ($data['product_image'] as $product_image) {
$this->db->query("INSERT INTO " . DB_PREFIX . "product_image SET product_id = '" . (int)$product_id . "', image = '" . $this->db->escape($product_image['image']) . "', sort_order = '" . (int)$product_image['sort_order'] . "', language_id = '" . (int)$language_id . "', img_description = '" . $this->db->escape($product_image['img_description']) . "'");
}
}
В admin\controller\catalog\product.php строка 1079:
$data['product_images'][] = array(
'image' => $image,
'thumb' => $this->model_tool_image->resize($thumb, 100, 100),
'sort_order' => $product_image['sort_order'],
'img_description' => $product_image['img_description']
);
В admin\view\template\catalog\product_form.twig вставил поля с привязкой к языку (на сайте два языка)
<td class="text-right">{% for language in languages %}
<div class="input-group"><span class="input-group-addon"><img src="language/{{ language.code }}/{{ language.code }}.png" title="{{ language.name }}" /></span>
<textarea name="product_image[{{ image_row }}][{{ language.language_id }}][img_description]" rows="5" placeholder="{{ entry_img_description }}" class="form-control">{{ product_image[language.language_id] ? product_image[language.language_id].img_description }}</textarea>
</div>
{% endfor %}
</td>
В БД в таблице oc_product_image добавил поля img_description и language_id (id языка добавил в PRIMARY и аттрибут "первичный" - использую OpenServer).
После сохранения изменений, обновил во вкладке модификаторы.
К части вывода полей на сайте не перешел, т.к. полезли ошибки при обновлении карточки товара:
Проверил данный файл, в указанном месте (строка 250) ничего нет, а в местах касающихся product_image внесены соответствующие изменения описанные выше.
Добрые люди, помогите решить задачу.