В далеком 2012 году написала пост о выводе веса в карточку товара для OpenCart 1.5.3.1, и хоть с тех пор прошло довольно много времени, но комментарии к посту все продолжают поступать. Само собой, прекрасно понимаю ажиотаж вокруг этой темы: поле веса и размеров в админке есть, а на странице их не видно, а всем надо) В общем, поскольку обороты набирает уже обновленная версия OpenCart, давайте попробуем добавить в карточку товара графу с весом для новых версий. Все манипуляции буду совершать на opencart 2.0.2.0. Я буду осуществлять вывод веса под выводом модели, вы же выводите вес где хотите, главное, не нарушайте целостность существующего кода.
1. Открываем файл catalog/view/theme/default/template/product/product.tpl и находим строку
1
|
<li><?php echo $text_model; ?> <?php echo $model; ?></li>
|
после нее размещаем код с выводом веса
1
2
3
4
5
6
7
8
|
<?php if ($weight>0) { ?><span><?php echo $entry_weight; ?></span> <?php echo round($weight, 2); ?>
<?php } ?>
<?php if ($weight_class_id == 2) {?>
<?php echo $text_weight_2; ?>
<?php } ?>
<?php if ($weight_class_id == 1) {?>
<?php echo $text_weight_1; ?>
<?php } ?>
|
2. Открываем файл catalog/controller/product/product.php, находим строку (приблизительно 231)
1
|
$data['text_model'] = $this->language->get('text_model');
|
и после нее добавляем
1
2
3
4
|
$data['entry_weight'] = $this->language->get('entry_weight');
$data['weight_class_id'] = $this->language->get('weight_class_id');
$data['text_weight_1'] = $this->language->get('text_weight_1');
$data['text_weight_2'] = $this->language->get('text_weight_2');
|
Чуть ниже находим следующую строчку (≈ 269)
1
|
$data['model'] = $product_info['model'];
|
и после нее опять размещаем строчки с весом
1
2
|
$data['weight'] = $product_info['weight'];
$data['weight_class_id'] = $product_info['weight_class_id'];
|
3. Открываем языковой файл catalog/language/russian/product/product.php и после строки
1
|
$_['text_model'] = 'Модель:';
|
добавляем
1
2
3
|
$_['entry_weight'] = 'Вес:';
$_['text_weight_2'] = 'гр';
$_['text_weight_1'] = 'кг';
|
И в итоге получаем вес в карточке товара.

Будьте внимательны при добавлении нового кода. Удачных всем правок!
Notice: Undefined variable: weight in /home/f/faridllk/papalavash.ru/public_html/catalog/view/theme/journal2/template/product/product.tpl on line 311 Notice: Undefined variable: weight_class_id in /home/f/faridllk/papalavash.ru/public_html/catalog/view/theme/journal2/template/product/product.tpl on line 317 Notice: Undefined variable: weight_class_id in /home/f/faridllk/papalavash.ru/public_html/catalog/view/theme/journal2/template/product/product.tpl on line 326
ВідповістиВидалитиНе знаю, что именно вы хотели сказать этим комментарием, но ваш сайт необходимо оптимизировать. В любом случае, пользователи не увидят ваших ошибок, так как не дождутся загрузки сайта
Видалити