Как вывести "категории" в рекомендуемые товары на OKAY CMS?

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

Aedi
Aedi
Репутация: 0
Сообщения: 17
Зарегистрирован: 12.05.2016
С нами: 7 лет 10 месяцев

Сообщение #1 Aedi » 25.02.2017, 12:33

Доброго времени всем!

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

Пример:
https://xn--80aahjm4cdn.xn--p1ai/product/boks-mod-wismec-reuleaux-rx23-/
*очень интересно на мой взгляд, поднимаешь ПФ бренда расходников и продукта одновременно

Первая моя мысль как человека с пока еще "кривыми руками" была такая, сделать отдельно карточку товара, назвать ее "Бренд ХХ" и вписать в нее линк brands/xxx, после чего добавлять в рекомендуемые. Но это не выполнимо, так как на карточке товара по шаблону урл обязательно начинается с products/. Поделитесь пожалуйста опытом.
Спасибо!

Шаблон стандартный
Версия 1.1.10

m1hasik M
Аватара
m1hasik M
Возраст: 32
Репутация: 31
Сообщения: 200
Зарегистрирован: 12.11.2015
С нами: 8 лет 4 месяца
Откуда: Днепр
Skype

Сообщение #2 m1hasik » 25.02.2017, 13:13

Aedi писал(а):Доброго времени всем!

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

Пример:
https://xn--80aahjm4cdn.xn--p1ai/product/boks-mod-wismec-reuleaux-rx23-/
*очень интересно на мой взгляд, поднимаешь ПФ бренда расходников и продукта одновременно

Первая моя мысль как человека с пока еще "кривыми руками" была такая, сделать отдельно карточку товара, назвать ее "Бренд ХХ" и вписать в нее линк brands/xxx, после чего добавлять в рекомендуемые. Но это не выполнимо, так как на карточке товара по шаблону урл обязательно начинается с products/. Поделитесь пожалуйста опытом.
Спасибо!

Шаблон стандартный
Версия 1.1.10

Вам поможет вот такой код в функции get_products

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

  if (empty($this->all_brands)) {
            foreach ($this->brands->get_brands() as $b) {
                $this->all_brands[$b->id] = $b;
            }
        }
        if (!empty($this->all_brands)) {
            foreach ($products as $p) {
                if (isset($this->all_brands[$p->brand_id])) {
                    $p->brand = $this->all_brands[$p->brand_id]->name;
                    $p->brand_url = $this->all_brands[$p->brand_id]->url;
                }
            }
        }



а перед самой функцией вот такая переменная должна быть private $all_brands = array();

Aedi
Aedi
Репутация: 0
Сообщения: 17
Зарегистрирован: 12.05.2016
С нами: 7 лет 10 месяцев

Сообщение #3 Aedi » 07.03.2017, 11:35

Методом копи-паст установил следующее:

1. Путь:
api/products.php

2. Нашел переменную:
https://puu.sh/uxVDA/2795a71441.png

3. Нашел функцию, она встроена оказалась:
https://puu.sh/uxVTT/fd6f557612.png

4. Снимаю на функции"/*". Захожу на главную, она не отображается.

5. От незнания добавлял строку переменной "private $all_brands = array();" перед функцией, добавлял функцию под переменную в начале кода и тп. Никакого результата не получил.

Где я ошибаюсь?
Подскажите пожалуйста.

korshunov
korshunov
Репутация: 146
Сообщения: 1854
Зарегистрирован: 03.12.2015
С нами: 8 лет 3 месяца
Skype

Сообщение #4 korshunov » 07.03.2017, 14:10

Aedi писал(а):Где я ошибаюсь?

У меня по описанному методу все прекрасно работает.
Где Вы ошибаетесь, гадать можно долго:
1. Может, Вы не знаете, что на главной рекомендуемые и не должны отображаться...
2. Может, Вы удаляете начало комментария ''/*" и не удаляете конец "*/".
3. Может, Вы не добавляете нужное в шаблоне.
4. Может, еще пяток-десяток разных возможностей...


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

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


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

   

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

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

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