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

В «сопутствующие товары» отображать только те, что есть в наличии.


Recommended Posts

Подскажите как сделать, что в «сопутствующие товары/рекомендованные товары» отображать только те, что есть в наличии.

Или кто готов написать такой модуль за отдельную плату. Не срочно, но надо. 

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


04.02.2023 в 17:33, impulze100500 сказал:

Подскажите как сделать, что в «сопутствующие товары/рекомендованные товары» отображать только те, что есть в наличии.

Или кто готов написать такой модуль за отдельную плату. Не срочно, но надо. 

 

Яка країна?

  • +1 2
Надіслати
Поділитися на інших сайтах

04.02.2023 в 18:30, WarStyle сказал:

 

Яка країна?

Ще треба версію запитати

ps судячи з попередніх з країною все добре

 

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

07.02.2023 в 14:38, impulze100500 сказал:

Звісно Україна. ) Ocstore 3.0.2

 

catalog/model/catalog/product.php

 

Найти функцию

 

public function getProductRelated($product_id) {
		$product_data = array();

		$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_related pr LEFT JOIN " . DB_PREFIX . "product p ON (pr.related_id = p.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) WHERE pr.product_id = '" . (int)$product_id . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'");

		foreach ($query->rows as $result) {
			$product_data[$result['related_id']] = $this->getProduct($result['related_id']);
		}

		return $product_data;
	}

 

И добавить там после AND p.status = '1' - AND p.quantity > 0

 

Сохранить и обновить модификаторы.

  • +1 3
Надіслати
Поділитися на інших сайтах

        if (!empty($setting['product'])) {
            $products = array_slice($setting['product'], 0, (int)$setting['limit']);


Убираем array_slice

добавляем счетчик
 

$i = 0;
            foreach ($products as $row=> $product_id) {


if ($i> $limit)  break;
if ($product_info) {
Если в налии {
$i++ 
} else {
continue;
}

 

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

07.02.2023 в 17:51, WarStyle сказал:

 

catalog/model/catalog/product.php

 

Найти функцию

 

public function getProductRelated($product_id) {
		$product_data = array();

		$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_related pr LEFT JOIN " . DB_PREFIX . "product p ON (pr.related_id = p.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) WHERE pr.product_id = '" . (int)$product_id . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'");

		foreach ($query->rows as $result) {
			$product_data[$result['related_id']] = $this->getProduct($result['related_id']);
		}

		return $product_data;
	}

 

И добавить там после AND p.status = '1' - AND p.quantity > 0

 

Сохранить и обновить модификаторы.

 

Получилось! Спасибо! :eek:

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


  • 1 month later...
  • 5 months later...
15.08.2023 в 10:41, vitas777 сказал:

Доброго дня! Такойже вопрос, есть решение для ocStore 2.3.0.2.3  ??

Це для усіх версій

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

  • 3 months later...
07.02.2023 в 17:53, chukcha сказал:

        if (!empty($setting['product'])) {
            $products = array_slice($setting['product'], 0, (int)$setting['limit']);


Убираем array_slice

добавляем счетчик
 

$i = 0;
            foreach ($products as $row=> $product_id) {


if ($i> $limit)  break;
if ($product_info) {
Если в налии {
$i++ 
} else {
continue;
}

 

Здравствуйте.
А зачем счетчик?

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


08.12.2023 в 19:21, Xaziain сказал:

Здравствуйте.
А зачем счетчик?

у вас в списках 1000 товаров, в самом начале у вас в списке товары, отключенные
а slice вырежет первые 10

 

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

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

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

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

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

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

Вхід

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

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

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

×
×
  • Створити...

Important Information

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