1

Тема: Отображение названия категории товара на странице товара

Для того, чтобы в OpenCart 2.х сделать отображение имени категории, к которой принадлежит товар, на его странице (то есть, в карточке товара) можно поступить следующим образом:

1. Отрываем файл catalog/controller/product/product.php и находим в нем строку:

        $this->load->model('catalog/product');

В файле содержатся 2 строки подобного кода, поэтому находим первую!!!

После нее добавляем код:

$this->load->model('catalog/category');
$data['catprod'] = array();
$product_category = $this->model_catalog_product->getCategories($product_id);
foreach ($product_category as $prodcat) {
$category_info = $this->model_catalog_category->getCategory($prodcat['category_id']);
if ($category_info) {
$data['catprod'][] = array(
'name' => $category_info['name'],
'href' => $this->url->link('product/category', 'path=' . $category_info['category_id'])
);
}
}

2. Затем ищем строку:

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

После нее добавляем:

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

Далее открываем файл catalog/language/russian/product/product.php и в нем ищем строку:

$_['text_manufacturer'] = 'Производитель:';

После нее добавляем:

$_['text_categoryproduct'] = 'Категории:';

3. Открываем файл своего шаблона product.tpl и в нужное место вставляем код:

<span><?php echo $text_categoryproduct; ?> </span><?php foreach ($catprod as $catp) { ?> <a href="/<?php echo $catp['href']; ?>"><?php echo $catp['name']; ?></a> |<?php } ?><br />

Можно, например, вставить после:

<?php if ($manufacturer) { ?>

Обновляем страницу и видим в карточке товара дополнительную информацию о местах размещения товара в магазине. В нашем случае данный товар можно найти в категории "Мониторы" и "Компьютеры"

Лучше всего, конечно, не производить правку непосредственно в самих файлах движка, а воспользоваться хорошей возможностью виртуальной модификации, когда исправления выполняются посредством применения OCMOD-файла модификатора, а исходные файлы движка остаются неизменными. Ниже можно скачать файл модификатора, который  сделает выше описанные ручные операции (файл своего шаблона product.tpl потребуется отредактировать самим, например, так, как показано выше в пункте 3. )

Post's attachments

Attachment icon cat_prod_page.ocmod.xml 1.41 kb, 246 downloads since 2015-09-07 

Поделиться

2

Re: Отображение названия категории товара на странице товара

Работает, но ссылки категорий выводятся криво site.ru/site.ru/category

Спасибо сказали: SV1

Сайт YUriy.Nogkin

Поделиться

3

Re: Отображение названия категории товара на странице товара

Верно, в коде для изменения файла шаблона product.tpl лишний слеш затесался.

....<a href="/<?php echo...

Не нужен он.

Поделиться