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

Вывод ID категории в каталоге OS 2.3


Tobolskiy

Recommended Posts

Всем доброго! Подскажите пожалуйста, как в каталоге вывести рядом с каждым товаров ID его главной категории из его карточки, получилось вывести только айди каталога в котором находишься(((

 

Заранее благодарю!

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


Н-р, для ocStrore 2.3.x можно:

1. В файле модели catalog\model\catalog\product.php добавить функцию для получения ID главных категорий всех товаров на странице категорий из таблицы oc_product_to_category

2. В контроллере catalog\controller\product\category.php прописать логику и подготовить массив ID главных категорий с использованием новой функции из модели  для вывода в представление catalog\view\theme\default\template\product\category.tpl

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


	public function getProductMainCategoryId($product_id) {
		$query = $this->db->query("SELECT category_id FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "' AND main_category = '1' LIMIT 1");

		return ($query->num_rows ? (int)$query->row['category_id'] : 0);
	}

 

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

13 часов назад, buslikdrev сказал:

	public function getProductMainCategoryId($product_id) {
		$query = $this->db->query("SELECT category_id FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "' AND main_category = '1' LIMIT 1");

		return ($query->num_rows ? (int)$query->row['category_id'] : 0);
	}

 

вставил данный код в модель.

в контроллер добавил:

				$data['products'][] = array(
					'product_id'  => $result['product_id'],
					'thumb'       => $image,
					'name'        => $result['name'],
					'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, $this->config->get($this->config->get('config_theme') . '_product_description_length')) . '..',
					'price'       => $price,
					'special'     => $special,
					'tax'         => $tax,
				+++	'category_id'       => $category_id,
					'minimum'     => ($result['minimum'] > 0) ? $result['minimum'] : 1,
					'rating'      => $rating,
					'href'        => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] . $url)
				);

 

стало выводится id, но все равно номер тот в категории которой я нахожусь

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


14 минут назад, Tobolskiy сказал:

стало выводится id, но все равно номер тот в категории которой я нахожусь

Не вижу, чтобы вы эту модель вызвали.

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

21 минуту назад, buslikdrev сказал:

Не вижу, чтобы вы эту модель вызвали.

дак я же вставил это уже в имеющуюся модель? получается в:

class ModelCatalogCategory extends Model {

или все не то? куда тогда че вставлять я теперь запутался)))

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


9 минут назад, Tobolskiy сказал:

или все не то? куда тогда че вставлять я теперь запутался)))

'category_id' => $this->model_catalog_product->getProductMainCategoryId($result['product_id'])

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

в ваш $category_id сейчас не задан, в него ничего не записано. 

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

4 минуты назад, Seriusis сказал:

в ваш $category_id сейчас не задан, в него ничего не записано. 

 

в нем выводится но не то... выводится айди текущей категории а не категории товара

 

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

'category_id' => $this->model_catalog_product->getProductMainCategoryId($result['product_id'])

получил ошибку:

Notice: Undefined property: Proxy::getProductMainCategoryId in

 

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


3 минуты назад, buslikdrev сказал:

в файл product.php

подождите, а зачем product.php? если нужно вывод в category.php

или я не понимаю

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


28 минут назад, Tobolskiy сказал:

 

в нем выводится но не то... выводится айди текущей категории а не категории товара

 

получил ошибку:



Notice: Undefined property: Proxy::getProductMainCategoryId in

 

Метод пытаетесь вызывать из модели product.php

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

подождите, а зачем product.php? если нужно вывод в category.php

или я не понимаю

Метод пытаетесь вставлять в category.php. 

Поэтому при вызове несуществующего метода получаете ошибку.

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


16 минут назад, searchingman сказал:

Метод пытаетесь вызывать из модели product.php

Метод пытаетесь вставлять в category.php. 

Поэтому при вызове несуществующего метода получаете ошибку.

 

спасибо. оказывается в этом и была проблема. думал нужно править только category.php

запутался))) благодарю за помощь всех!

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


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

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

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

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

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

Вхід

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

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

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

Important Information

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