Jump to content

Как вывести категорию товара при просмотре "Бренд"


Recommended Posts

Ужас как любопытно узнать подробности - кто пропустил,  где пропустил, как надо правильно делать с break...

И это пишет Корс гуру программирования допотопными средствами :D

Читаем матчасть по циклам, как минимум сэкономит запросы к БД.

Link to post
Share on other sites

Можете ТОЧНО сказать, где в указанном способе в коде "Пропустил break" ?

 

Приведенный код создает ОДИН запрос к БД, Если знаете, как лучше или правильнее, сообщайте. Если не можете или не хотите сказать ТОЧНО по делу, просьба не писать вообще, чтоб не разводить флуд...

Link to post
Share on other sites

Можете ТОЧНО сказать, где в указанном способе в коде "Пропустил break" ?

 

Приведенный код создает ОДИН запрос к БД, Если знаете, как лучше или правильнее, сообщайте. Если не можете или не хотите сказать ТОЧНО по делу, просьба не писать вообще, чтоб не разводить флуд...

Ну если его здесь нет:

Пробуйте

 

 

		$categories = $this->categories->get_product_categories($products_ids);
		foreach($categories as $cat)
			if(!isset($products[$cat->product_id]->category))
				$products[$cat->product_id]->category = $this->categories->get_category((int)$cat->category_id);

 

 

Логично же что пропустил break.
Link to post
Share on other sites

По моему, совсем не логично.
Чтобы понять Вашу логику, я и прошу написать по-Вашему правильный вариант вместе с правильно вставленным break.
В коде Simpla полным-полно подобных циклов, и никто на форуме, кажется, до сих пор не требовал навставлять там break-ов.

Link to post
Share on other sites
  • 1 year later...

 

Пробуйте

 

		$categories = $this->categories->get_product_categories($products_ids);
		foreach($categories as $cat)
			if(!isset($products[$cat->product_id]->category))
				$products[$cat->product_id]->category = $this->categories->get_category((int)$cat->category_id);

Подскажите пожалуйста, почему выводится только одна категория? Другие категории этого товара не выводятся

Link to post
Share on other sites

Подскажите пожалуйста, почему выводится только одна категория? Другие категории этого товара не выводятся

 

Потому что задуман вывод только одной категории.

Если надо выводить все, потребуется некоторое усложнение...

Link to post
Share on other sites
  • 1 year later...

 

Пробуйте

 

		$categories = $this->categories->get_product_categories($products_ids);
		foreach($categories as $cat)
			if(!isset($products[$cat->product_id]->category))
				$products[$cat->product_id]->category = $this->categories->get_category((int)$cat->category_id);

Подскажите, а как можно данное решение использовать для вывода категории товара в yandex.php

Link to post
Share on other sites

По-разному можно использовать.
Если готовы оплачивать, можно написать немаленькую статью с описанием нескольких способов...

А если ждете ответ краткий, то можно данное решение использовать копированием-вставкой. Желательно при этом понимать смысл: что копируем, зачем, куда вставляем, почему именно туда, а не в десяток разных прочих мест и т.д.

Link to post
Share on other sites

По-разному можно использовать.

Если готовы оплачивать, можно написать немаленькую статью с описанием нескольких способов...

 

А если ждете ответ краткий, то можно данное решение использовать копированием-вставкой. Желательно при этом понимать смысл: что копируем, зачем, куда вставляем, почему именно туда, а не в десяток разных прочих мест и т.д.

Я просто спросил совета. Мне не нужна "немаленькая статья".

Вы же понимаете суть вопроса? Я и сам понимаю, что "Копированием и вставкой" тут не обойтись, но именно с yndex.php у меня не получается.

Edited by FDA
Link to post
Share on other sites

Я просто спросил совета. Мне не нужна "немаленькая статья".

Вы же понимаете суть вопроса? Я и сам понимаю, что "Копированием и вставкой" тут не обойтись, но именно с yndex.php у меня не получается.

 

Так стандартно же выводится название категории в yandex.php 

А у самого товара прописывается id этой категории как по правилам

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

Link to post
Share on other sites

Так стандартно же выводится название категории в yandex.php 

А у самого товара прописывается id этой категории как по правилам

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

В этом-то вся и проблема, помимо id категории товара, надо чтобы прописывалось наименование категории которой принадлежит товар

<typePrefix>Видеокамера</typePrefix>
<model>Видеокамера ST-712 IP PRO D</model>

Здесь <model> это как <name> (название товара)

<typePrefix> это наименование категории к которой принадлежит товар

Edited by FDA
Link to post
Share on other sites

В этом-то вся и проблема, помимо id категории товара, надо чтобы прописывалось наименование категории которой принадлежит товар

<typePrefix>Видеокамера</typePrefix>
<model>Видеокамера ST-712 IP PRO D</model>

Здесь <model> это как <name> (название товара)

<typePrefix> это наименование категории к которой принадлежит товар

 

Не понятно зачем вам решение которое тут применено?

 

Тут у вас простой SQL запрос, где вы должны подтянуть название категории. Ну а дальше просто в теге где вам нужно выводите. Данное решение вам не зачем.

Link to post
Share on other sites

Не понятно зачем вам решение которое тут применено?

 

Тут у вас простой SQL запрос, где вы должны подтянуть название категории. Ну а дальше просто в теге где вам нужно выводите. Данное решение вам не зачем.

Наверное неправильно выразился. Мне нужно у товара вывести категорию к которой он принадлежит и сделать это надо в yandex.php

Link to post
Share on other sites

Наверное неправильно выразился. Мне нужно у товара вывести категорию к которой он принадлежит и сделать это надо в yandex.php

 

Очень неправильно выразился. Ибо неопределенно, расплывчато и непонятно.

1. "у товара вывести категорию к которой он принадлежит" - это стандартно делается в виде

<categoryId>".$p->category_id."</categoryId>

2. Если надо непременно выводить и НАЗВАНИЕ категории, то надо говорить, как и что, в частности:

2.1 в каком виде выводить - как минимум  два варианта есть: Ботинки/Детские/Летние или просто Летние,

2.2 название одной главной категории или и дополнительных категорий тоже.

3. В зависимости от желаний 2.1 и 2.2 в реализации будут "большие разницы"...

 

 

 

 

 

Link to post
Share on other sites

 

Очень неправильно выразился. Ибо неопределенно, расплывчато и непонятно.

1. "у товара вывести категорию к которой он принадлежит" - это стандартно делается в виде

<categoryId>".$p->category_id."</categoryId>

2. Если надо непременно выводить и НАЗВАНИЕ категории, то надо говорить, как и что, в частности:

2.1 в каком виде выводить - как минимум  два варианта есть: Ботинки/Детские/Летние или просто Летние,

2.2 название одной главной категории или и дополнительных категорий тоже.

3. В зависимости от желаний 2.1 и 2.2 в реализации будут "большие разницы"...

 

 

 

 

 

Надо вывести именно НАЗВАНИЕ категории и именно ТОЛЬКО "Летние". Товар всегда относится только к одной категории (это наверняка тоже важно, чтобы не было  вопросов что выводить если товар принадлежит нескольким категориям)

Link to post
Share on other sites

В yandex.php уже есть  выбор всех категорий

Нужно сформировать массив id => name

И потом у каждого товара по его category_id выводить соответствующее имя из массива категорий

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...