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

[Решено] Вывод модели рекомендуемых товаров в каждой карточке на странице категории


Recommended Posts

Здравствуйте! 

Собственно надо вывести Модели рекомендуемых товаров в каждой карточке на странице категории.

Рекомендуемые товары те что заполняются в товаре на вкладке Связи. 

Помогите пожалуйста реализовать!

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

AWARO, Спасибо за предложение! Но такой огромный функционал мне не нужен... Хочу обойтись стандартными средствами.

 

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

2 часа назад, nikifalex сказал:

диктуйте, а я буду нажимать на кнопки.

Или какого рода помощь вы хотите?

Я просто уходил с работы и не успел накатать с чего начал, а Вы так сразу критично ))

Вот что сделал: 

В контроллере, перед

$data['products'][] = array(

Вставил это:

$related_to = $this->model_catalog_product->getProductRelated($this->request->get['product_id']);
foreach ($related_to as $result) {
$related_to = array(
'product_id'  => $result['product_id'],
'name'        => $result['name'],
'href'        => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] . $url)
        );
}

а после

$data['products'][] = array(

добавил это

'related'     => $related_to,

В темплейте в <?php foreach ($products as $product) { ?> попробовал вывести так:

<?php foreach ($product as $related_to) { ?>
                <p><?php echo $product['name']; ?></p>
<?php } ?>

Но что-то пошло не так... Предупреждения Notice: Undefined index: product_id и в каждом товаре длинный список с его названием.

Буду благодарен любой помощи!

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

1 минуту назад, max1985 сказал:

$this->request->get['product_id']

в как Вы это получите на странице категорий?

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


Спасибо krumax !

Сделал так:

$related_to = $this->model_catalog_product->getProductRelated($result['product_id']);

Ошибка Notice: Undefined index: product_id исчезла. С выводом пока борюсь!

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

5 минут назад, max1985 сказал:

С выводом пока борюсь!

что, показывает по одному похожему товару? Вы же в цикле каждый раз заново массив наполняете.

Может попробовать так?

$related_to[] = array(

 

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


Ничего не изменилось http://lipar.de/index.php?route=product/category&amp;path=20

Может проблема в выводе?

<?php foreach ($product as $related_to) { ?>
                <p><?php echo $product['name']; ?></p>
<?php } ?>

 

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

17 минут назад, max1985 сказал:

Ничего не изменилось http://lipar.de/index.php?route=product/category&amp;path=20

Может проблема в выводе?


<?php foreach ($product as $related_to) { ?>
                <p><?php echo $product['name']; ?></p>
<?php } ?>

 

именно. Обратите внимание, что Вы перебираете, а что у Вас echo

 

Эх...

 

<?php foreach ($product['related'] as $related_to) { ?>
                <p><?php echo $related_to['name']; ?></p>
<?php } ?>

Хотя мне не понятно, зачем было в массив добавлять href и product_id если их не нужно выводить

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


12 минут назад, krumax сказал:

Хотя мне не понятно, зачем было в массив добавлять href и product_id если их не нужно выводить

тогда можно и вообще убрать из кода этот перебор с перестройкой массива. В нём есть смысл только если вы собрались реально выводить href для похожих товаров.

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


2 минуты назад, max1985 сказал:

Спасибо! Получилось, только вывелось два раза ))

http://prntscr.com/kdy7n5

 

Кстати, сделайте ещё проверку по product_id, чтобы в похожих не выводился и сам товар на котором показываете.

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


category.php

$related_to = $this->model_catalog_product->getProductRelated($result['product_id']);

foreach($related_to as $related){
	$related_to[$related['product_id']] = array(
		'name' 	=> $related['name'],
		'href'  => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $related['product_id'])
	);
}

 

category.tpl

<?php foreach($product['related'] as $related) { ?>
	<p><a href="<?php echo $related['href']; ?>"><?php echo $related['name']; ?></a></p>
<?php } ?>
  • +1 1
Надіслати
Поділитися на інших сайтах

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

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

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

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

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

Вхід

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

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

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

Important Information

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