Перейти к содержимому


Фото
- - - - -

Как вывести в карточку и список товаров определенное свойство?


  • Чтобы отвечать, сперва войдите на форум
21 ответов в теме

#1 ishibaev

ishibaev
  • Пользователь
  • 44 сообщений

Опубликовано 05.04.2016 - 21:13

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

 

Собственно - у товара есть несколько свойств. 

Задача - вывести свойство с айди 2 и например с айди 4.  как то так...

 

 



#2 kislotnik

kislotnik
  • Пользователь
  • 329 сообщений
  • Заказчик, Пользователь
  • Версия CMS:2.x
  • Откуда:Украина

Опубликовано 05.04.2016 - 22:26

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

 

Собственно - у товара есть несколько свойств. 

Задача - вывести свойство с айди 2 и например с айди 4.  как то так...

{foreach $product->features as $f}
{if ($f->feature_id == 'ваш id')}
<li>
	<label>{$f->name}</label>
	<span>{$f->value}</span>
</li>
{/if}
{/foreach}

Изменено: kislotnik, 05.04.2016 - 22:26


#3 ishibaev

ishibaev
  • Пользователь
  • 44 сообщений

Опубликовано 06.04.2016 - 01:43

{foreach $product->features as $f}
{if ($f->feature_id == 'ваш id')}
<li>
	<label>{$f->name}</label>
	<span>{$f->value}</span>
</li>
{/if}
{/foreach}

Спасибо, в карточке товара работает!  а как указать  несколько id свойств?

 

и как заставить работать в списке товаров (хочу сделать краткие описания из списка определенных свойств)?


Изменено: ishibaev, 06.04.2016 - 01:49


#4 kislotnik

kislotnik
  • Пользователь
  • 329 сообщений
  • Заказчик, Пользователь
  • Версия CMS:2.x
  • Откуда:Украина

Опубликовано 06.04.2016 - 02:16

Спасибо, в карточке товара работает!  а как указать  несколько id свойств?

 

и как заставить работать в списке товаров (хочу сделать краткие описания из списка определенных свойств)?

 

($f->feature_id == 'тут id') and ($f->feature_id == 'и тут id')
 

Изменено: kislotnik, 06.04.2016 - 02:16


#5 simplashop

simplashop
  • Пользователь
  • 81 сообщений
  • Программирование, Верстка
  • Версия CMS:2.x

Опубликовано 06.04.2016 - 12:42

вам нужно обратиться во view/ProductsView.php и раскомментить
 

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

а потом использовать $product->options



#6 ishibaev

ishibaev
  • Пользователь
  • 44 сообщений

Опубликовано 06.04.2016 - 22:34

вам нужно обратиться во view/ProductsView.php и раскомментить
 

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

а потом использовать $product->options

А подробнее можно? Пожалуста



#7 simplashop

simplashop
  • Пользователь
  • 81 сообщений
  • Программирование, Верстка
  • Версия CMS:2.x

Опубликовано 07.04.2016 - 13:33

простите, я повел вас неверным путем. я завтра опишу вам план действий. сегодня у моего партнера ДР
 



#8 simplashop

simplashop
  • Пользователь
  • 81 сообщений
  • Программирование, Верстка
  • Версия CMS:2.x

Опубликовано 11.04.2016 - 09:43

В view/ProductsView.php перед кодом
 

$this->design->assign('products', $products);

нужно вставить такую конструкцию
 

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

в шаблоне(products.tpl) соответственно можно это дело перебрать таким образом

{foreach $product->options as $po}
    {if in_array($po->feature_id,array(23,34,234))}{* условие проверки на определенный(е) идентификатор(ы) свойства *}
        {$po->name|escape}: {$po->value|escape}
    {/if}
{/foreach}


#9 simplashop

simplashop
  • Пользователь
  • 81 сообщений
  • Программирование, Верстка
  • Версия CMS:2.x

Опубликовано 11.04.2016 - 09:43

А подробнее можно? Пожалуста

описал



#10 pringlesday

pringlesday
  • Пользователь
  • 15 сообщений
  • Откуда:Уфа

Опубликовано 12.04.2016 - 12:49

($f->feature_id == 'тут id') and ($f->feature_id == 'и тут id')
 

не and, а or



#11 kislotnik

kislotnik
  • Пользователь
  • 329 сообщений
  • Заказчик, Пользователь
  • Версия CMS:2.x
  • Откуда:Украина

Опубликовано 12.04.2016 - 13:59

не and, а or

чем вас and не устраивает?



#12 mishanya

mishanya
  • Фрилансер
  • 2 546 сообщений
  • Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Ukraine

Опубликовано 12.04.2016 - 14:02

чем вас and не устраивает?

 

feature_id не может иметь одновременно два значения - 23 и 25 например


Изменено: mishanya, 12.04.2016 - 14:04


#13 pringlesday

pringlesday
  • Пользователь
  • 15 сообщений
  • Откуда:Уфа

Опубликовано 13.04.2016 - 15:16

Да. Это же не кот Шрёдингера



#14 simplashop

simplashop
  • Пользователь
  • 81 сообщений
  • Программирование, Верстка
  • Версия CMS:2.x

Опубликовано 14.04.2016 - 10:21

проверка на наличие айдишника в массиве намного короче, понятнее и удобнее конструкции с использованием логического оператора OR (он же ||)



#15 ishibaev

ishibaev
  • Пользователь
  • 44 сообщений

Опубликовано 15.04.2016 - 23:36

спасибо всем за участие!



#16 bsod9145

bsod9145
  • Пользователь
  • 9 сообщений
  • Верстка, Заказчик, Пользователь
  • Версия CMS:2.x
  • Откуда:Москва

Опубликовано 05.04.2017 - 15:14

Все что написано работает в карточке и в каталоге, а как в сопутствующих товарах вывести определенное свойство кто нибудь знает?



#17 madison21

madison21
  • Пользователь
  • 90 сообщений
  • Пользователь
  • Версия CMS:2.x
  • Откуда:Украина

Опубликовано 23.05.2018 - 19:56

В view/ProductsView.php перед кодом
 

$this->design->assign('products', $products);

нужно вставить такую конструкцию
 

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

 

Подскажите пожалуйста кто знает..

Хочу задействовать вывод характеристик на странице index.tpl для метатегов.

Я так понимаю, что по аналогии надо этот код прописать в файле  view/IndexView.php

Я пробую так, но не работает.

 

$this->design->assign('products', $products);
            
            $properties = $this->features->get_product_options($products_ids);
            foreach($properties as $property)
                $products[$property->product_id]->options[] = $property;
 

 


Изменено: madison21, 23.05.2018 - 20:00


#18 Noxter

Noxter

    Simpla Developer

  • Фрилансер
  • 6 555 сообщений
  • Дизайн, Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Киев

Опубликовано 23.05.2018 - 20:15

За вывод товаров на главной отвечает файл view/View.php (тут плагины для смарти), и шаблон design/default/html/main.tpl

#19 madison21

madison21
  • Пользователь
  • 90 сообщений
  • Пользователь
  • Версия CMS:2.x
  • Откуда:Украина

Опубликовано 23.05.2018 - 21:51

За вывод товаров на главной отвечает файл view/View.php (тут плагины для смарти), и шаблон design/default/html/main.tpl

Благодарю, но не разобрался куда вставлять код в этом файле.


В файле view.php не нашёл строку $this->design->assign('products', $products);
а если вставляю весь код с этой строкой то не работает..
не выводятся характеристики, если я их прописываю в файле index.tpl

именно в этом файле находятся метатеги, в которые я и хочу вставить эти характеристики.

 



#20 phukortsin

phukortsin
  • Пользователь
  • 213 сообщений
  • Программирование, Пользователь
  • Версия CMS:2.x
  • Откуда:Львов

Опубликовано 24.05.2018 - 08:37

Благодарю, но не разобрался куда вставлять код в этом файле.


В файле view.php не нашёл строку $this->design->assign('products', $products);
а если вставляю весь код с этой строкой то не работает..
не выводятся характеристики, если я их прописываю в файле index.tpl

именно в этом файле находятся метатеги, в которые я и хочу вставить эти характеристики.

 

 

Методом тыка вряд ли выйдет, так как это существенно иначе. Даже подсказка специалиста

 

За вывод товаров на главной отвечает файл view/View.php (тут плагины для смарти), и шаблон design/default/html/main.tpl

 

несколько не в тему, так как, во-первых, вопрос был про вывод в метатегах, а не про вывод товаров, а во-вторых, вопрос был не про главную страницу.

 

Сначала надо определиться, на каких страницах хотите менять мета теги.

По смыслу можно предположить, что это надо для страницы отдельного товара, а там кто знает, какие хотелки на уме у товарища...






0 пользователей читают эту тему

0 пользователей, 0 гостей, 0 скрытых