Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Вывести SKU в категории.


Esox

Recommended Posts

Добрый день.

 

Пытаюсь вывести SKU в каждом товаре в списке товаров категории.

Подскажите, что сделано не так?

 

Для вывода SKU в категории:

 

 в файле catalog\controller\product\category.php

после

'name'  => $result['name'],

вставляем

'sku'        => $result['sku'],

после

$this->data['text_price'] = $this->language->get('text_price');

вставляем

$this->data['text_sku'] = $this->language->get('text_sku');

в файле catalog\language\russian\product\category.php

вставляем

$_['text_sku']          = 'Артикул:';

в файле catalog\view\theme\default\template\product\category.tpl

после

<a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a>

вставляем

      <?php echo $text_sku; ?>
      <?php echo $product['sku']; ?>

SKU выводится нормально только в последней категории. В родительских же категориях выводится ошибка: vqmod\vqcache\vq2-catalog_controller_product_category.php on line 191

И разваливается кодировка, все в иероглифах.

 

Вот фрагмент о котором идет речь:

                $product_total = $this->model_catalog_product->getTotalProducts($data);
                
                $this->data['categories'][] = array(
                    'name'  => $result['name'],
  это строка 191      'sku'   => $result['sku'],
                    
                    'href'  => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $result['category_id'] . $url)
                );
            }

 191 строка это  'sku'   => $result['sku'],

 

Версия 1.5.3.1

Заранее всем отписавшимся спасибо.

Надіслати
Поділитися на інших сайтах


в контроллере вставляете в массив для информации по категории, а вам нужен массив для товара...
То есть строчку 'sku'        => $result['sku'], вставить в массив:
 

$this->data['products'][] = array(
Надіслати
Поділитися на інших сайтах


Эта строчка

 'sku'        => $result['sku'],

уже присутствует в :

                $this->data['products'][] = array(
                    'product_id'  => $result['product_id'],
                    'short_description' => $result['short_description'],
                    'thumb'       => $image, //short_description
                    'name'        => $result['name'],
                    'sku'        => $result['sku'],

есть еще такой массив:

$this->data['products'] = array();
            
            $data = array(
                ///// Added code
                'filter_manufacturer_id'    => $this->data['filter_manufacturers'],
                'filter_sub_category'       => true,
                ///// End of addition
                'filter_category_id' => $category_id,
                'sort'               => $sort,
                'order'              => $order,
                'start'              => ($page - 1) * $limit,
                'limit'              => $limit
Надіслати
Поділитися на інших сайтах


  • 2 months later...
  • 1 year later...

У меня почему то не появилось самого артикула - а слово артикул: - есть.... в место где должен быть sku _ пусто !  - Помогите.

и ошибка vqmod\vqcache\vq2-catalog_controller_product_category.php on line 191 - как описывалось ранее.

Змінено користувачем xirosima
Надіслати
Поділитися на інших сайтах


ссылка где описано решение

 

ТОлько совместив оба варианта имею дубль слова артикул. 

 $this->data['text_sku'] = $this->language->get('text_sku');   - убрал от предыдущего в  catalog/controller/product

 в файле category.php    - и дубль слова артикул ушло.

 

 

 

1.) /catalog/controller/product/  файл — category.php. 
Находим строчку кода:
'name'        => $result['name'],
под ней дописываем :
'sku'         => (empty($result['sku'])) ? '' : $this->language->get('text_sku') .' '. $result['sku'],
2.)Переходим в директорию — upload/catalog/language/russian/product/, и выбираем category.php.
В нем находим строчку со следующим содержанием:
$_['text_model']        = 'Модель:';
И под ней дописываем наш код:
$_['text_sku']          = 'SKU (Артикул):';
Тут стоит уточнить. Если вы используете другие языки, вам нужно проделать этот пункт к каждому из них, изменяя при этом текст на переведенный.
3.) Подключаем SKU непосредственно в шаблоне категории Opencart. Для этого будем редактировать файл, по адресу — /catalog/view/theme/default/template/product/category.tpl.
В нужном вам месте вы можете добавить этот код, для примера сделаю под строчкой:
<div class="name"><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></div>
И добавляю код для вставки sku:
<span><?php echo $product['sku']; ?></span>
Готово. 
Змінено користувачем xirosima
Надіслати
Поділитися на інших сайтах


  • 1 year later...

Подскажите как вывести Артикул в Отзывах в админке, <?php echo $product['sku']; ?> не работает :(
видимо нужно  поправить запрос к базе в model/catalog/review.php , а синтаксисом не владею :(


 

Надіслати
Поділитися на інших сайтах


  • 10 months later...

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.