Перейти к содержанию
Slavec86

Похожие товары Opencart в корзине

Рекомендуемые сообщения

Всем привет! Сломал себе голову над тем, как добавить блок "похожие товары" из карточки товара, в корзину, чтобы организовать блок допродажи. Выводил код из контроллера product.php в симплчекаут, но сайт падает. Opencart 1.5. Сайт - http://konstruiruem.ru

Может кто подскажет где копать? 

 

Вот так код в контроллере продукта выглядит: 

$results = $this->model_catalog_product->getProductRelated($this->request->get['product_id']);


foreach ($results as $result) {
if ($result['image']) {
$image = $this->model_tool_image->resize($result['image'], $this->config->get('config_image_related_width'), $this->config->get('config_image_related_height'));
} else {
$image = false;
}

if (($this->config->get('config_customer_price') && $this->customer->isLogged()) || !$this->config->get('config_customer_price')) {
$price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')));
} else {
$price = false;
}

if ((float)$result['special']) {
$special = $this->currency->format($this->tax->calculate($result['special'], $result['tax_class_id'], $this->config->get('config_tax')));
} else {
$special = false;
}

if ($this->config->get('config_review_status')) {
$rating = (int)$result['rating'];
} else {
$rating = false;
}

$this->data['products'][] = array(
'product_id' => $result['product_id'],
'thumb' => $image,
'name' => $result['name'],
'price' => $price,
'special' => $special,
'rating' => $rating,
'reviews' => sprintf($this->language->get('text_reviews'), (int)$result['reviews']),
'href' => $this->url->link('product/product', 'product_id=' . $result['product_id']),
);
}
Изменено пользователем Skunk
spoiler, code

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Знает, но молчит

 

До тез пор пока вы не расскажете что такое "похожие товары"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а, понял...

В opencart, в разделе "связи" (в карточке продукта), есть возможность добавить любые товары, обозначается это поле как "похожие товары". Эти добавленные товары выводятся на фронт в карточке продукта, рядом с описанием в одноименную вкладку. Вот тут они добавлены http://konstruiruem.ru/iphone

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а если товаров в корзине несколько?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а если товаров в корзине несколько?

тогда как в анекдоте ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

:ugeek:

точно, я не подумал об этом!))) А как тогда? Просто в карточке товара выводить недостаточно, нужно ловить момент перед фактическим оформлением заказа, тогда самый большой шанс допродать что-то появляется. Если есть идеи, поделитесь, ну а так, в общем, нужно думать. Всем спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можно еще вопрос? У меня в боковом левом меню, если перейти в основную категорию, выводятся только подкатегории, и тут появляется проблема:

- Ссылки подкатегорий теряют главную категорию, т.е. должно быть так http://konstruiruem.ru/desktops/pc, а получается так http://konstruiruem.ru/pc

не пойму, как ссылку исправить...

 

 

Вот код контроллера:

<?php 
class ControllerModuleCategory extends Controller {
protected function index($setting) {
$this->language->load('module/category');
if (isset($this->request->get['path'])) {
$parts = explode('_', (string)$this->request->get['path']);
if (isset($parts[1])) {
$this->data['category_id'] = $parts[1];
} else {
$this->data['category_id'] = 0;
}
if (isset($parts[2])) {
$this->data['child_id'] = $parts[2];
} else {
$this->data['child_id'] = 0;
}
$this->load->model('catalog/category');
$this->data['categories'] = array();
$categories = $this->model_catalog_category->getCategories($parts[0]);
foreach ($categories as $category) {
$children_data = array();
$children = $this->model_catalog_category->getCategories($category['category_id']);
foreach ($children as $child) {
$children_data[] = array(
'category_id' => $child['category_id'],
'name' => $child['name'],
'href' => $this->url->link('product/category', 'path=' . '58' . '_' . $child['category_id'])
);
}
$this->data['categories'][] = array(
'category_id' => $category['category_id'],
'name' => $category['name'],
'children' => $children_data,
'href' => $this->url->link('product/category', 'path=' . $category['category_id'])
);
}
if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/module/category.tpl')) {
$this->template = $this->config->get('config_template') . '/template/module/category.tpl';
} else {
$this->template = 'default/template/module/category.tpl';
}
$this->render();
}
}
}
?>

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.