Перейти к содержанию
Официальный форум поддержки Simpla

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

Доброго времени суток, уважаемые форумчане. 
На одном форуме нашел интересную вещь.
 

Логика заключается в том, что мы выбираем весь товары из категории (в скрипте есть ограничение в 100, если у
Вас больше — увеличьте на предполагаемых длину). Скрипт выбирает связанный товар (6 штук), которые идут
после данного товара. При достижении конца списка скрипт добирает нехватку из начала списка. Таким образом
список связанных товар фиксированный до тех пока не внесут изменения в каталог.
Итак, открываем файл view/ProductView.php и в районе 144 строки находим код
$this­>design­>assign('related_products', $related_products);
}
И сразу после закрывающей скобки добавить систему генерации связанных товаров из той же категории, что и
сам товар
else { // генерируемые связанные товары
$products­>categories = $this­>categories­>get_categories(array('product_id'=>$product­>id));
$category = reset($products­>categories);
$related_products = array();
$after = false;
$products = $this­>products­>get_products(array('category_id' => $category­>id, 'limit' => 100, 'in_stock'=>1, 'visible'=>1));
foreach($products as $p)
{
if($after && count($related_products) < 6)
$related_products[$p­>id] = $p;
elseif($p­>id == $product­>id)
$after = true;
}
if(count($related_products) < 6)
foreach($products as $p)
if($p­>id != $product­>id && count($related_products) < 6)
$related_products[$p­>id] = $p;
else break;
$related_products_images = $this­>products­>get_images(array('product_id'=>array_keys($related_products)));
foreach($related_products_images as $related_product_image)
if(isset($related_products[$related_product_image­>product_id]))
$related_products[$related_product_image­>product_id]­>images[] = $related_product_image;
$related_products_variants = $this­>variants­>get_variants(array('product_id'=>array_keys($related_products), 'instock'=>true));
foreach($related_products_variants as $related_product_variant)
{
if(isset($related_products[$related_product_variant­>product_id]))
{
$related_product_variant­>price *= (100­$discount)/100;
$related_products[$related_product_variant­>product_id]­>variants[] = $related_product_variant;
}
}
foreach($related_products as $r)
{
$r­>image = &$r­>images[0];
$r­>variant = &$r­>variants[0];
}
$this­>design­>assign('related_products', $related_products);
} // end: генерируемые связанные товары
 
Но происходит ошибка в строке выделенной красным.
post-21301-0-22405500-1543097265_thumb.png

КАК ИСПРАВИТЬ???
Изменено пользователем lihach
Ссылка на сообщение
Поделиться на другие сайты

КАК ИСПРАВИТЬ???

 

Для начала найдите все дефисы в операторах ->

 

ваша красная строчка должна выглядеть как-то так

$products­->categories = $this-­>categories-­>get_categories(array('product_id'=>$product-­>id));
Изменено пользователем chocolate_moles
Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...