Adems

Как сделать крошки с показом категории из которой попал на страницу товара

Recommended Posts

Добрый день! Суть вопроса: есть категория 1 и категория 2, товар принадлежит обеим категориям при этом имея главную категорию 1 по которой строится путь крошек.

При переходе на страницу товара из категории 2 показывается путь крошек на категорию 1. Вопрос: как сделать вывод крошек и на  категорию 1 и на категорию 2 в зависимости от того из какой категории попадаем на страницу товара. При этом чпу настроено без показа категории, и последняя ссылка в крошках не активна.

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


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

У меня есть наработки, чтобы крошки строились по методу откуда пришёл пользователь, например: главная\контакты\категория2 - пользователь с главной перешёл в контакты, потом в категорию2. Если интересует, можете спонсировать.
Если вам чисто для категорий есть такое решение (показывает ссылки на категории в которых находится товар):

Скрытый текст

https://opencartforum.com/topic/105044-polnyy-put-k-tovaru-v-breadcrumbs/

 


		if (isset($this->request->get['product_id'])) {
			$product_id = (int)$this->request->get['product_id'];
		} else {
			$product_id = 0;
		}

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

		$product_categories = $this->model_catalog_product->getCategories($product_id);

		if (!empty($product_categories)) {
			$path_new = '';

			foreach ($product_categories as $key => $value) {
				$path_new .= '_' . $value['category_id'];
			}

			$this->request->get['path'] = trim($path_new, '_');
		}

 


 

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


Ссылка на сообщение
Поделиться на других сайтах
В 04.01.2019 at 01:49, BuslikDrev сказал:

У меня есть наработки, чтобы крошки строились по методу откуда пришёл пользователь, например: главная\контакты\категория2 - пользователь с главной перешёл в контакты, потом в категорию2. Если интересует, можете спонсировать.
Если вам чисто для категорий есть такое решение (показывает ссылки на категории в которых находится товар):

  Показать содержимое

https://opencartforum.com/topic/105044-polnyy-put-k-tovaru-v-breadcrumbs/

 



		if (isset($this->request->get['product_id'])) {
			$product_id = (int)$this->request->get['product_id'];
		} else {
			$product_id = 0;
		}

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

		$product_categories = $this->model_catalog_product->getCategories($product_id);

		if (!empty($product_categories)) {
			$path_new = '';

			foreach ($product_categories as $key => $value) {
				$path_new .= '_' . $value['category_id'];
			}

			$this->request->get['path'] = trim($path_new, '_');
		}

 


 

Спасибо! Почти то что нужно. Единственное что показывает в Крошках полностью все категории сразу которым принадлежит товар причём в хаотичном порядке)). Если б подправить было бы, неплохо. Также в некоторых теряется полный путь.

А если удаляю это как сказано в другом топике по ссылке получаю Fatal error: Call to a member function getCategories() on null in

if (isset($this->request->get['product_id'])) {
	$product_id = (int)$this->request->get['product_id'];
} else {
	$product_id = 0;
}

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

Ошибка

 

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


Ссылка на сообщение
Поделиться на других сайтах
49 минут назад, Adems сказал:

Спасибо! Почти то что нужно. Единственное что показывает в Крошках полностью все категории сразу которым принадлежит товар причём в хаотичном порядке)). Если б подправить было бы, неплохо. Также в некоторых теряется полный путь.

А если удаляю это как сказано в другом топике по ссылке получаю Fatal error: Call to a member function getCategories() on null in


if (isset($this->request->get['product_id'])) {
	$product_id = (int)$this->request->get['product_id'];
} else {
	$product_id = 0;
}

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

Ошибка

 


Ошибки быть не должно, т.к. этот код есть в коде который вставляете выше. Вы можете и не удалять. Но скорее вы не так вставили код, возможно со спец-символами от форума или не в той кодировки сохранили файл.

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


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

Создайте аккаунт или войдите для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу