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

сортировка свойств при выводе в каталоге товаров


Перейти к решению Решено shooroop,

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

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

 

Не вопрос, проходим в ProductsView и раскомментируем строчки позволяющие нам 

 

			$properties = $this->features->get_options(array('product_id'=>$products_ids));
			foreach($properties as $property)
				$products[$property->product_id]->options[] = $property;
			

 

Далее все отлично выводится с помощью

 

                         {if $product->options}
{foreach $product->options as $f}
{$f->value}
{/foreach}

Заголовок свойства не выводил по причине верстки.

 

Все бы хорошо, но когда заполняем происходит трэш в сортировке.

 

К примеру возьмем 

 

 

свойство 1  - 11

свойство 2  - 22

свойство 3  - 33

 

все отлично. выводятся один за одним.

 

Далее я пишу в свойство 1 - Тест

 

и получается что при обновлении у меня уже выводится так

 

 

свойство 2  - 22

свойство 3  - 33

свойство 1  - Тест

 

 

то есть свойство с текстом уходит в конец.

 

в карточке товара все хорошо.  Расскоментировать код не достаточно?

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

Не достточно. Поскольку сортировка в свойствах сделана в общем случае практически случайной. Чтобы выводилось в порядке свойств, надо в той функции менять запрос.

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

 

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

 

Не вопрос, проходим в ProductsView и раскомментируем строчки позволяющие нам 

 

			$properties = $this->features->get_options(array('product_id'=>$products_ids));
			foreach($properties as $property)
				$products[$property->product_id]->options[] = $property;
			

 

 

данный код не совсем корректен приведу пример

 

имеем на одной странице каталога два товара с одинаковым свойством  "цвет - красный" в результате свойство выведется только у первого товара у второго нет

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

Не достточно. Поскольку сортировка в свойствах сделана в общем случае практически случайной. Чтобы выводилось в порядке свойств, надо в той функции менять запрос.

 

получается код в сборке присутствует, но проблему не решает. только Productsview править функцию?

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

получается код в сборке присутствует, но проблему не решает. только Productsview править функцию?

 

Да, именно так. Это всего лишь очередная ошибка в Simpla, коих на форуме описано весьма много. Некоторые обнаружены много лет назад...

 

Попробуйте так:

$properties = $this->features->get_product_options(array('product_id'=>$products_ids));

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

Да, именно так. Это всего лишь очередная ошибка в Simpla, коих на форуме описано весьма много. Некоторые обнаружены много лет назад...

 

Попробуйте так:

$properties = $this->features->get_product_options(array('product_id'=>$products_ids));

 

Так в целом не подтягивает ничего.

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

замени тот код  что раскоментировал на этот

 

$properties = $this->features->get_product_options($products_ids);
foreach($properties as $property) { 
$products[$property->product_id]->options[] = $property; 
}
Ссылка на сообщение
Поделиться на другие сайты

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

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

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

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

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

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

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

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

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