Jump to content
Sign in to follow this  
pledo

[Решено] Как вывести в карточке товара sku и upc?

Recommended Posts

Здравствуйте. Помогите советом как мне вывести значение sku и upc на карточке товара в OpenCart 3.0

 

Покопался в контролере /catalog/controller/product/product.php

Нашел там массив:

$data['products'][] = array(
					'product_id'  => $result['product_id'],
					'thumb'       => $image,
					'name'        => $result['name'],
					'description' => utf8_substr(trim(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8'))), 0, $this->config->get('theme_' . $this->config->get('config_theme') . '_product_description_length')) . '..',
					'price'       => $price,
                    'sku'         => $product_info['sku'],
                    'upc'         => $product_info['upc'],
					'special'     => $special,
					'tax'         => $tax,
					'minimum'     => $result['minimum'] > 0 ? $result['minimum'] : 1,
					'rating'      => $rating,
					'href'        => $this->url->link('product/product', 'product_id=' . $result['product_id'])
				);

Туда вот я попытался вставить как раз нужные мне данные:

'sku'         => $product_info['sku'],
'upc'         => $product_info['upc'],

Пробовал и массив $prpduct_info и $result и ничего.

 

В самом шаблоне в product.twig пробовал вывод и через {{ sku }} и через {{ products.sku }} - никак. 

 

Подскажите что я делаю не верно в данном случае. 

Share this post


Link to post
Share on other sites

потому что не нужно в массив товаров

 

добавляйте после

$data['model'] = $product_info['model'];

Share this post


Link to post
Share on other sites

Пробую добавить сразу после $data['model'] = $product_info['model']; :

	$data['sku'] = $product_info['sku'];
	$data['upc'] = $product_info['upc'];

В итоге получаю  в ответ:

Parse error: syntax error, unexpected '$data' (T_VARIABLE) in /home/user/domains/site.ru/storage/modification/catalog/controller/product/product.php on line 312

 

Share this post


Link to post
Share on other sites

так смотрите что у вас фактически в файле кеша модификаторов получается

либо не то/не туда добавляете, либо какой-то мод вклинивается

Share this post


Link to post
Share on other sites

К сожалению не хватает ни опыта не знаний чтобы продиагностировать данную проблему. 

Данные строки пытался вставить сразу после $data['model'] = $product_info['model']; в других местах где было обращение к $data['..'], результат один и  тот же. 

 

Где располагается файл кэша модификаторов?

 

Само кэширование шаблона я отключил в настройках, чтоб не вводил он меня в заблуждение.

 

Может есть какой-то альтернативный путь? Создать левую переменную и туда поместить содержимое :

$product_info['sku'] и $product_info['upc']

Но ничего не вышло, в шаблоне похоже парсер движка это место с выводом значения переменной через eсho просто взводит в тэг комментария и все. Хотя во 2ой версии движка такие костыли прокатывали.

Share this post


Link to post
Share on other sites

Форумчане!!! Есть хоть кто-нибудь тут кто может помочь в этом, казалось бы не сложном вопросе моем.

Share this post


Link to post
Share on other sites

Пишите в ЛС, поможем.

Share this post


Link to post
Share on other sites

Проверил у себя, это вообще просто 4 строчки кода)))

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

после строки №242 $data['model'] = $product_info['model'];

вставляем:

$data['sku'] = $product_info['sku'];

$data['upc'] = $product_info['upc'];

 

в файле шаблона: \catalog\view\theme\default\template\product\product.twig

в месте где нужно вывести пишем:

{{ sku }}
{{ upc }}

 

Всё)))

Share this post


Link to post
Share on other sites

@PeterStudio Спасибо огромное! Все заработало. Никак не пойму до сих пор, правда, причину почему у меня ранее ошибка возникала, я и синтаксис проверял и копировал аккуратно и вставлял в код тоже, но сейчас все пошло как надо! 

 

 

Share this post


Link to post
Share on other sites

Да, пожалуйста. Рад был помочь.

Share this post


Link to post
Share on other sites

            {% endif %}
            <li>{{ text_model }} {{ model }}</li>
            <li>{{ text_sku }} {{ sku }}</li>

 

Всё работает! Спасибо! =)

Share this post


Link to post
Share on other sites
В 31.05.2018 в 17:51, PeterStudio сказал:

Проверил у себя, это вообще просто 4 строчки кода)))

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

после строки №242 $data['model'] = $product_info['model'];

вставляем:

$data['sku'] = $product_info['sku'];

$data['upc'] = $product_info['upc'];

 

в файле шаблона: \catalog\view\theme\default\template\product\product.twig

в месте где нужно вывести пишем:

{{ sku }}
{{ upc }}

 

Всё)))

А мне поможете? У меня такая же хрень. Opencart 3. Нужно вывести SKU на страницу товара. 

Share this post


Link to post
Share on other sites
В 21.07.2019 в 16:08, Segrin сказал:

А мне поможете? У меня такая же хрень. Opencart 3. Нужно вывести SKU на страницу товара. 

Если сделали все как указали участники выше и все равно не отображаются SKU, то внесите те же изменения, что в оригинал файла category.php в такой же файл category.php, но по следующему пути: /storage/modification/catalog/controller/product

Share this post


Link to post
Share on other sites
12 минут назад, evtalex сказал:

Если сделали все как указали участники выше и все равно не отображаются SKU, то внесите те же изменения, что в оригинал файла category.php в такой же файл category.php, но по следующему пути: /storage/modification/catalog/controller/product

 

не нужно писать чушь, нужно знать минимальные основы движка

и при правке файлов движка обновлять кеш модификаторов (в тройке - еще и кеш шаблона) для применения изменений

Share this post


Link to post
Share on other sites
В 05.08.2019 в 12:57, evtalex сказал:

Если сделали все как указали участники выше и все равно не отображаются SKU, то внесите те же изменения, что в оригинал файла category.php в такой же файл category.php, но по следующему пути: /storage/modification/catalog/controller/product

 

чтобы ты долго жил!!! помогло, спасибо :)

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.