Вывести свойство в products.tpl

Правила раздела: faq.php?mode=okay
Модератор: Модераторы

trainracing M
Аватара
trainracing M
Возраст: 31
Репутация: 13
Сообщения: 121
Зарегистрирован: 07.10.2016
С нами: 7 лет 5 месяцев
Сайт

Сообщение #21 trainracing » 20.11.2018, 13:03

Рабочий вариант на okay 2.2.3
В ProductsView.php находим:

Код: Выделить всё

$product->properties = array();


и ниже вставим

Код: Выделить всё

$product->features = $this->features->get_options(array('product_id'=>$product->id));


Затем в tiny_products.tpl, выводим где угодно:

Код: Выделить всё

{foreach $product->features as $f}
 {if $f->feature_id == 3}
   <div>{$f->value}</div>
 {/if}
{/foreach}

siteapp M
siteapp M
Возраст: 32
Репутация: 7
Сообщения: 118
Зарегистрирован: 12.01.2016
С нами: 8 лет 2 месяца

Сообщение #22 siteapp » 12.08.2019, 11:40

trainracing писал(а):Рабочий вариант на okay 2.2.3
В ProductsView.php находим:

Код: Выделить всё

$product->properties = array();


и ниже вставим

Код: Выделить всё

$product->features = $this->features->get_options(array('product_id'=>$product->id));


Затем в tiny_products.tpl, выводим где угодно:

Код: Выделить всё

{foreach $product->features as $f}
 {if $f->feature_id == 3}
   <div>{$f->value}</div>
 {/if}
{/foreach}
Да работает и на 2.1.4, спасибо большое
А как вывести на главной странице в превью так же?
:eh:

famfibria
famfibria
Репутация: 0
Сообщения: 5
Зарегистрирован: 18.07.2019
С нами: 4 года 8 месяцев

Сообщение #23 famfibria » 18.10.2019, 15:56

trainracing писал(а):Рабочий вариант на okay 2.2.3
В ProductsView.php находим:

Код: Выделить всё

$product->properties = array();


и ниже вставим

Код: Выделить всё

$product->features = $this->features->get_options(array('product_id'=>$product->id));


Затем в tiny_products.tpl, выводим где угодно:

Код: Выделить всё

{foreach $product->features as $f}
 {if $f->feature_id == 3}
   <div>{$f->value}</div>
 {/if}
{/foreach}
Данное решение не работает на версии 2.3.2, подскажите как поправить, чо сделать чтобы заработало?

trainracing M
Аватара
trainracing M
Возраст: 31
Репутация: 13
Сообщения: 121
Зарегистрирован: 07.10.2016
С нами: 7 лет 5 месяцев
Сайт

Сообщение #24 trainracing » 31.10.2019, 19:22

Подскажите, как вывести свойства в версии 2.3.4 ??

Код: Выделить всё

$product->features = $this->features->get_options(array('product_id'=>$product->id));
в файл ProductsView.php
не работает, сайт падает в невозможность отобразить страницу

famfibria
famfibria
Репутация: 0
Сообщения: 5
Зарегистрирован: 18.07.2019
С нами: 4 года 8 месяцев

Сообщение #25 famfibria » 05.11.2019, 13:55

Разобрался. Нужно в файле ProductsView.php вместо строки

Код: Выделить всё

$product->features = $this->features->get_options(array('product_id'=>$product->id));

Добавить

Код: Выделить всё

        if ($product_values = $this->features_values->get_features_values(array('product_id'=>$product->id))) {
            foreach ($product_values as $pv) {
                if (!isset($product->features[$pv->feature_id])) {
                    $product->features[$pv->feature_id] = $pv;
                }
                $product->features[$pv->feature_id]->values[] = $pv;
            }
        }

famfibria
famfibria
Репутация: 0
Сообщения: 5
Зарегистрирован: 18.07.2019
С нами: 4 года 8 месяцев

Сообщение #26 famfibria » 26.09.2020, 11:30

Всем привет! Кто подскажет как внедрить данную доработку на 3 версию движка?


Название раздела: Вопросы по работе с OkayCMS
Правила раздела: faq.php?mode=okay

Быстрый ответ


Введите код в точности так, как вы его видите. Регистр символов не имеет значения.
Код подтверждения

   

Вернуться в «Вопросы по работе с OkayCMS»

Кто сейчас на форуме (по активности за 5 минут)

Сейчас этот раздел просматривают: 34 гостя