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

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

trainracing M
Аватара
trainracing M
Возраст: 27
Репутация: 11
Сообщения: 112
Зарегистрирован: 07.10.2016
С нами: 3 года 1 месяц
Сайт

Сообщение #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
Возраст: 28
Репутация: 3
Сообщения: 114
Зарегистрирован: 12.01.2016
С нами: 3 года 10 месяцев

Сообщение #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
Сообщения: 3
Зарегистрирован: 18.07.2019
С нами: 4 месяца 4 дня

Сообщение #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
Возраст: 27
Репутация: 11
Сообщения: 112
Зарегистрирован: 07.10.2016
С нами: 3 года 1 месяц
Сайт

Сообщение #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
Сообщения: 3
Зарегистрирован: 18.07.2019
С нами: 4 месяца 4 дня

Сообщение #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;
            }
        }


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

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


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

   

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

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

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