Я новичок и пытаюсь сам разобраться, но теперь я в тупике.
Необходимо добавить поле описания для дополнительных изображений товара на вкладке "изображение".
Что я сделал.В строке 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']
);
В админке\ 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
(идентификатор языка, добавленного в PRIMARY, и атрибут «основной» - я использую OpenServer).
После сохранения изменений я обновил модификаторы на вкладке.
Я не сделалперейти к части выходного поля, поскольку при обновлении карты продукта возникли ошибки:
Примечание: неопределенный индекс: img_description в ** \ system \ storage \ification \ admin \ model \ catalog \ product.php в строке 250 Примечание: неопределенный индекс: img_description в ** \ system \ storage \ modify \ admin \ model \ catalog \ product.php в строке 250 Предупреждение: невозможно изменить информацию заголовка - заголовки уже отправлены (вывод начался в ** \ admin \ controller \ startup \ error.php: 34) в ** \ system \ library \ response.php в строке 36
Я проверил этот файл, в указанном месте (строка 250) естьничего, и в местах, связанных с product_image
, соответствующие изменения сделаны, как описано выше.
Добрые люди, помогите решить проблему, пожалуйста.