Вывести свойства со ссылками в products

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

trainracing M
Аватара
trainracing M
Возраст: 26
Репутация: 7
Сообщения: 98
Зарегистрирован: 07.10.2016
С нами: 2 года 5 месяцев
Сайт

Сообщение #1 trainracing » 12.02.2019, 11:25

Подскажите, как вывести такую конструкция в списке товаров (напр. в products_content.tpl)?
(нужно вывести значения всех свойств, у которых есть url в карточке)

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

{foreach $product->features as $f}
                             
                                    <span class="features_value">
                                        {if $category && $f->url_in_product && $f->in_filter}
                                            <a href="{$lang_link}catalog/{$category->url}/{$f->url}-{$f->translit}">{$f->value|escape}</a>
                                        {else}
                                            {$f->value|escape}
                                        {/if}
                                    </span>
                                </li>
                            {/foreach}

korshunov
korshunov
Репутация: 93
Сообщения: 927
Зарегистрирован: 03.12.2015
С нами: 3 года 3 месяца
Skype

Сообщение #2 korshunov » 12.02.2019, 12:38


trainracing M
Аватара
trainracing M
Возраст: 26
Репутация: 7
Сообщения: 98
Зарегистрирован: 07.10.2016
С нами: 2 года 5 месяцев
Сайт

Сообщение #3 trainracing » 12.02.2019, 14:32

korshunov писал(а):viewtopic.php?f=9&t=210
это моя же тема. Но там вывод определенного свойства.
А я спрашиваю про свойства у которых есть url, по которым можно кликнуть, вот их как вывести все

OkayCMS M
Администратор
Аватара
OkayCMS M
Администратор
Репутация: 94
Сообщения: 931
Зарегистрирован: 12.11.2015
С нами: 3 года 4 месяца
Сайт Skype

Сообщение #4 OkayCMS » 12.02.2019, 14:54

Не до конца понял. URL же у всех свойств есть.

korshunov
korshunov
Репутация: 93
Сообщения: 927
Зарегистрирован: 03.12.2015
С нами: 3 года 3 месяца
Skype

Сообщение #5 korshunov » 13.02.2019, 06:31

trainracing писал(а):
korshunov писал(а):viewtopic.php?f=9&t=210
это моя же тема. Но там вывод определенного свойства.

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

trainracing M
Аватара
trainracing M
Возраст: 26
Репутация: 7
Сообщения: 98
Зарегистрирован: 07.10.2016
С нами: 2 года 5 месяцев
Сайт

Сообщение #6 trainracing » 13.02.2019, 10:51

OkayCMS писал(а):Не до конца понял. URL же у всех свойств есть.

отвечу сразу всем, я пытаюсь сделать вывод не всех свойств, которые есть в товарах, а вывод значений только тех свойств, у которых стоит (активен чекбокс) "Ссылка на фильтр в товаре"

Если вывести все свойства, то там будут и те, у которых активна ссылка и те у которых не активна.

Я то хочу вывести со ссылкой на url этого свойства

Например у нас 10 товаров, и всего в системе имеется напр 8 свойств с активными ссылками типа "цвет, размер, ткань"

Соответственно
у нах имеются такие урл как:

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

<a href="site.ru/../tsvet-white">белый</a>
<a href="site.ru/../tsvet-black">черный</a>
<a href="site.ru/../tkan-satin">сатин</a>
и тд


И вот все урлы которые есть у товаров этой категории, мне нужно вывести в списке товаров на странице категории

Вот как это можно сделать?)

p.s. как я понял, если свойству дать Ссылка на фильтр в товаре и "в фильтре"
то оно будет отображаться по такой конструкции:

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

 {foreach $f->options as $o}
                 
                   
                 
                        <div class="tegi">
                            {$furl = {furl params=[$f->url=>$o->translit, page=>null]}}
                            <a class="{if $link_tag=='span'} fn_filter_link{/if}" href="{$furl}">
                               
                                <span>{$o->value|escape}</span>
                            </a>
                        </div>
                    {/foreach}


Но некоторые мне не нужно захламлять фильтр и не надо, чтобы некоторые свойства были в фильтре, а если указать что свойство не в фильтре, то свойству не присваевается урл в карточке товара и не выводится в списке товаров(((

Добавлено спустя 53 минуты 50 секунд:
Нашел решение)))

в features.tpl такой код:

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

 {* Features filter *}
        {if $features}
            {foreach $features as $key=>$f}
      {if $f->id !=75}
                {* Feature name *}
                <div class="h2 filter_name" data-feature="{$f->id}">{$f->name|escape}</div>

                <div class="filter_group">
                    {* Display all features *}
                    <div class="filter_item">
                        {$furl = {furl params=[$f->url=>null, page=>null]}}
                        <{$link_tag} class="filter_link{if $link_tag=='span'} fn_filter_link{/if}{if !$smarty.get.$key} checked{/if}" href="{$furl}">
                            <i class="filter_indicator"></i>
                            <span data-language="features_all">{$lang->features_all}</span>
                        </{$link_tag}>
                    </div>
                    {* Feture value *}
                    {foreach $f->options as $o}
                        <div class="filter_item">
                            {$furl = {furl params=[$f->url=>$o->translit, page=>null]}}
                            <{$link_tag} class="filter_link{if $link_tag=='span'} fn_filter_link{/if}{if $smarty.get.{$f@key} && in_array($o->translit,$smarty.get.{$f@key})} checked{/if}" href="{$furl}">
                                <i class="filter_indicator"></i>
                                <span>{$o->value|escape}</span>
                            </{$link_tag}>
                        </div>
                    {/foreach}

                </div>
      {/if}
            {/foreach}
        {/if}



А в products_content.tpl такой:

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

{if $features}
            {foreach $features as $key=>$f}

                <div class="filter_group">
                   
                 
                 
                 
                    {* Feture value *}
                    {foreach $f->options as $o}
                 
                   
                 
                        <div class="tegi">
                            {$furl = {furl params=[$f->url=>$o->translit, page=>null]}}
                            <a class="{if $link_tag=='span'} fn_filter_link{/if}" href="{$furl}">
                               
                                <span>{$o->value|escape}</span>
                            </a>
                        </div>
                    {/foreach}

                </div>
            {/foreach}
        {/if}


супер-костыль 2019


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

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


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

   

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

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

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