Skymod Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 Всем привет! Версия OpenCart 3.0.2.0 Столкнулся с проблемой, нужно вывести на страницу товара, категорию которой он принадлежит. Хотел сперва сделать через хлебные крошки, но потом понял что если найти товар по поиску, то там будет отображаться "Search", вместо категории. По этому такой вариант не подходит. Потом наткнулся на другой способ catalog/model/product/product.php public function getCategoryNames($product_id) { $query = $this->db->query("SELECT cd.name FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } catalog/controller/product/product.php После этого $data['points'] = $product_info['points'] Добавил $data['cat_list'] = $this->model_catalog_product->getCategoryNames($product_id); И в самом файле product.twig {% if catlist %} {% for catlist in catname %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} Но почему то ничего не выводит. Кеш конечно же очищал. Может тут что то не так?) Подскажите, пожалуйста Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 {% for catlist in catname %} Попробуйте местами поменять Надіслати Поділитися на інших сайтах More sharing options... AlexDW Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 как вариант есть такое решение Надіслати Поділитися на інших сайтах More sharing options... Skymod Опубліковано: 30 березня 2021 Автор Share Опубліковано: 30 березня 2021 Я поменял на getCategory в контролере и в моделе и добавил $this->load->model('catalog/category'); (сначала в контролер, потом проверил, потом в модель) Но всё равно не работает Надіслати Поділитися на інших сайтах More sharing options... Skymod Опубліковано: 30 березня 2021 Автор Share Опубліковано: 30 березня 2021 (змінено) 13 минут назад, buslikdrev сказал: {% for catlist in catname %} Попробуйте местами поменять В каком смысле?) Типа так: ? {% for catname in catlist %} UPD: проверил, так тоже не работает Змінено 30 березня 2021 користувачем Skymod Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 39 минут назад, Skymod сказал: $this->load->model('catalog/category') Я не обратил внимание. Такое подключение должно быть: $this->load->model('catalog/product') Также вам нужно удалить правки product.twig, если вносили через редактор тем. Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 40 минут назад, Skymod сказал: UPD: проверил, так тоже не работает cat_list должно называться {% if cat_list %} {% for catname in cat_list %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} 1 Надіслати Поділитися на інших сайтах More sharing options... Skymod Опубліковано: 30 березня 2021 Автор Share Опубліковано: 30 березня 2021 13 минут назад, buslikdrev сказал: cat_list должно называться {% if cat_list %} {% for catname in cat_list %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} Спасибо большое!) Всё работает Надіслати Поділитися на інших сайтах More sharing options... whiteblue Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 2 часа назад, Skymod сказал: Всем привет! Версия OpenCart 3.0.2.0 Столкнулся с проблемой, нужно вывести на страницу товара, категорию которой он принадлежит. Хотел сперва сделать через хлебные крошки, но потом понял что если найти товар по поиску, то там будет отображаться "Search", вместо категории. По этому такой вариант не подходит. Потом наткнулся на другой способ catalog/model/product/product.php public function getCategoryNames($product_id) { $query = $this->db->query("SELECT cd.name FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } catalog/controller/product/product.php После этого $data['points'] = $product_info['points'] Добавил $data['cat_list'] = $this->model_catalog_product->getCategoryNames($product_id); И в самом файле product.twig {% if catlist %} {% for catlist in catname %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} Но почему то ничего не выводит. Кеш конечно же очищал. Может тут что то не так?) Подскажите, пожалуйста должна быть готовая настройка Надіслати Поділитися на інших сайтах More sharing options... 2 years later... AlexMax13 Опубліковано: 15 червня 2023 Share Опубліковано: 15 червня 2023 решение для окстор если нужно вывести главную категорию в которую входит товар: модель, где то после: public function getCategories($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "'"); return $query->rows; } вставить это: public function getMainCategory($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "' AND main_category = '1'"); return (int)$query->row['category_id']; } в контроллер: $data['mid'] = $this->model_catalog_product->getMainCategory($this->request->get['product_id']); и в твиг это: {{ mid }} Надіслати Поділитися на інших сайтах More sharing options... 6 months later... Qdons Опубліковано: 22 грудня 2023 Share Опубліковано: 22 грудня 2023 (змінено) Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Змінено 22 грудня 2023 користувачем Qdons Надіслати Поділитися на інших сайтах More sharing options... Qdons Опубліковано: 23 грудня 2023 Share Опубліковано: 23 грудня 2023 22.12.2023 в 12:19, Qdons сказал: Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Розібрався! В модель в public function getProduct($product_id) { вставляємо: if ($query->num_rows) { $catdes_query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); if($catdes_query->num_rows) { $catdes = $catdes_query->row['description']; } else { $catdes = ""; } } Потім після: return array( 'product_id' => $query->row['product_id'], Вставляємо: 'catdes' => $catdes, В контролер після $data['points'] = $product_info['points']; всталяємо: $data['catdes'] = html_entity_decode($product_info['catdes'], ENT_QUOTES, 'UTF-8'); В твиг вставляємо: {% if catdes %} <div class="tab-pane" id="tab-catdes">{{ catdes }}</div> {% endif %} Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 3.x Opencart 3.x: Загальні питання Вывести название категории на странице товара Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
buslikdrev Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 {% for catlist in catname %} Попробуйте местами поменять Надіслати Поділитися на інших сайтах More sharing options... AlexDW Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 как вариант есть такое решение Надіслати Поділитися на інших сайтах More sharing options... Skymod Опубліковано: 30 березня 2021 Автор Share Опубліковано: 30 березня 2021 Я поменял на getCategory в контролере и в моделе и добавил $this->load->model('catalog/category'); (сначала в контролер, потом проверил, потом в модель) Но всё равно не работает Надіслати Поділитися на інших сайтах More sharing options... Skymod Опубліковано: 30 березня 2021 Автор Share Опубліковано: 30 березня 2021 (змінено) 13 минут назад, buslikdrev сказал: {% for catlist in catname %} Попробуйте местами поменять В каком смысле?) Типа так: ? {% for catname in catlist %} UPD: проверил, так тоже не работает Змінено 30 березня 2021 користувачем Skymod Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 39 минут назад, Skymod сказал: $this->load->model('catalog/category') Я не обратил внимание. Такое подключение должно быть: $this->load->model('catalog/product') Также вам нужно удалить правки product.twig, если вносили через редактор тем. Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 40 минут назад, Skymod сказал: UPD: проверил, так тоже не работает cat_list должно называться {% if cat_list %} {% for catname in cat_list %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} 1 Надіслати Поділитися на інших сайтах More sharing options... Skymod Опубліковано: 30 березня 2021 Автор Share Опубліковано: 30 березня 2021 13 минут назад, buslikdrev сказал: cat_list должно называться {% if cat_list %} {% for catname in cat_list %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} Спасибо большое!) Всё работает Надіслати Поділитися на інших сайтах More sharing options... whiteblue Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 2 часа назад, Skymod сказал: Всем привет! Версия OpenCart 3.0.2.0 Столкнулся с проблемой, нужно вывести на страницу товара, категорию которой он принадлежит. Хотел сперва сделать через хлебные крошки, но потом понял что если найти товар по поиску, то там будет отображаться "Search", вместо категории. По этому такой вариант не подходит. Потом наткнулся на другой способ catalog/model/product/product.php public function getCategoryNames($product_id) { $query = $this->db->query("SELECT cd.name FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } catalog/controller/product/product.php После этого $data['points'] = $product_info['points'] Добавил $data['cat_list'] = $this->model_catalog_product->getCategoryNames($product_id); И в самом файле product.twig {% if catlist %} {% for catlist in catname %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} Но почему то ничего не выводит. Кеш конечно же очищал. Может тут что то не так?) Подскажите, пожалуйста должна быть готовая настройка Надіслати Поділитися на інших сайтах More sharing options... 2 years later... AlexMax13 Опубліковано: 15 червня 2023 Share Опубліковано: 15 червня 2023 решение для окстор если нужно вывести главную категорию в которую входит товар: модель, где то после: public function getCategories($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "'"); return $query->rows; } вставить это: public function getMainCategory($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "' AND main_category = '1'"); return (int)$query->row['category_id']; } в контроллер: $data['mid'] = $this->model_catalog_product->getMainCategory($this->request->get['product_id']); и в твиг это: {{ mid }} Надіслати Поділитися на інших сайтах More sharing options... 6 months later... Qdons Опубліковано: 22 грудня 2023 Share Опубліковано: 22 грудня 2023 (змінено) Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Змінено 22 грудня 2023 користувачем Qdons Надіслати Поділитися на інших сайтах More sharing options... Qdons Опубліковано: 23 грудня 2023 Share Опубліковано: 23 грудня 2023 22.12.2023 в 12:19, Qdons сказал: Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Розібрався! В модель в public function getProduct($product_id) { вставляємо: if ($query->num_rows) { $catdes_query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); if($catdes_query->num_rows) { $catdes = $catdes_query->row['description']; } else { $catdes = ""; } } Потім після: return array( 'product_id' => $query->row['product_id'], Вставляємо: 'catdes' => $catdes, В контролер після $data['points'] = $product_info['points']; всталяємо: $data['catdes'] = html_entity_decode($product_info['catdes'], ENT_QUOTES, 'UTF-8'); В твиг вставляємо: {% if catdes %} <div class="tab-pane" id="tab-catdes">{{ catdes }}</div> {% endif %} Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 3.x Opencart 3.x: Загальні питання Вывести название категории на странице товара Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
AlexDW Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 как вариант есть такое решение Надіслати Поділитися на інших сайтах More sharing options... Skymod Опубліковано: 30 березня 2021 Автор Share Опубліковано: 30 березня 2021 Я поменял на getCategory в контролере и в моделе и добавил $this->load->model('catalog/category'); (сначала в контролер, потом проверил, потом в модель) Но всё равно не работает Надіслати Поділитися на інших сайтах More sharing options... Skymod Опубліковано: 30 березня 2021 Автор Share Опубліковано: 30 березня 2021 (змінено) 13 минут назад, buslikdrev сказал: {% for catlist in catname %} Попробуйте местами поменять В каком смысле?) Типа так: ? {% for catname in catlist %} UPD: проверил, так тоже не работает Змінено 30 березня 2021 користувачем Skymod Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 39 минут назад, Skymod сказал: $this->load->model('catalog/category') Я не обратил внимание. Такое подключение должно быть: $this->load->model('catalog/product') Также вам нужно удалить правки product.twig, если вносили через редактор тем. Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 40 минут назад, Skymod сказал: UPD: проверил, так тоже не работает cat_list должно называться {% if cat_list %} {% for catname in cat_list %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} 1 Надіслати Поділитися на інших сайтах More sharing options... Skymod Опубліковано: 30 березня 2021 Автор Share Опубліковано: 30 березня 2021 13 минут назад, buslikdrev сказал: cat_list должно называться {% if cat_list %} {% for catname in cat_list %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} Спасибо большое!) Всё работает Надіслати Поділитися на інших сайтах More sharing options... whiteblue Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 2 часа назад, Skymod сказал: Всем привет! Версия OpenCart 3.0.2.0 Столкнулся с проблемой, нужно вывести на страницу товара, категорию которой он принадлежит. Хотел сперва сделать через хлебные крошки, но потом понял что если найти товар по поиску, то там будет отображаться "Search", вместо категории. По этому такой вариант не подходит. Потом наткнулся на другой способ catalog/model/product/product.php public function getCategoryNames($product_id) { $query = $this->db->query("SELECT cd.name FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } catalog/controller/product/product.php После этого $data['points'] = $product_info['points'] Добавил $data['cat_list'] = $this->model_catalog_product->getCategoryNames($product_id); И в самом файле product.twig {% if catlist %} {% for catlist in catname %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} Но почему то ничего не выводит. Кеш конечно же очищал. Может тут что то не так?) Подскажите, пожалуйста должна быть готовая настройка Надіслати Поділитися на інших сайтах More sharing options... 2 years later... AlexMax13 Опубліковано: 15 червня 2023 Share Опубліковано: 15 червня 2023 решение для окстор если нужно вывести главную категорию в которую входит товар: модель, где то после: public function getCategories($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "'"); return $query->rows; } вставить это: public function getMainCategory($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "' AND main_category = '1'"); return (int)$query->row['category_id']; } в контроллер: $data['mid'] = $this->model_catalog_product->getMainCategory($this->request->get['product_id']); и в твиг это: {{ mid }} Надіслати Поділитися на інших сайтах More sharing options... 6 months later... Qdons Опубліковано: 22 грудня 2023 Share Опубліковано: 22 грудня 2023 (змінено) Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Змінено 22 грудня 2023 користувачем Qdons Надіслати Поділитися на інших сайтах More sharing options... Qdons Опубліковано: 23 грудня 2023 Share Опубліковано: 23 грудня 2023 22.12.2023 в 12:19, Qdons сказал: Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Розібрався! В модель в public function getProduct($product_id) { вставляємо: if ($query->num_rows) { $catdes_query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); if($catdes_query->num_rows) { $catdes = $catdes_query->row['description']; } else { $catdes = ""; } } Потім після: return array( 'product_id' => $query->row['product_id'], Вставляємо: 'catdes' => $catdes, В контролер після $data['points'] = $product_info['points']; всталяємо: $data['catdes'] = html_entity_decode($product_info['catdes'], ENT_QUOTES, 'UTF-8'); В твиг вставляємо: {% if catdes %} <div class="tab-pane" id="tab-catdes">{{ catdes }}</div> {% endif %} Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 3.x Opencart 3.x: Загальні питання Вывести название категории на странице товара Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Skymod Опубліковано: 30 березня 2021 Автор Share Опубліковано: 30 березня 2021 Я поменял на getCategory в контролере и в моделе и добавил $this->load->model('catalog/category'); (сначала в контролер, потом проверил, потом в модель) Но всё равно не работает Надіслати Поділитися на інших сайтах More sharing options... Skymod Опубліковано: 30 березня 2021 Автор Share Опубліковано: 30 березня 2021 (змінено) 13 минут назад, buslikdrev сказал: {% for catlist in catname %} Попробуйте местами поменять В каком смысле?) Типа так: ? {% for catname in catlist %} UPD: проверил, так тоже не работает Змінено 30 березня 2021 користувачем Skymod Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 39 минут назад, Skymod сказал: $this->load->model('catalog/category') Я не обратил внимание. Такое подключение должно быть: $this->load->model('catalog/product') Также вам нужно удалить правки product.twig, если вносили через редактор тем. Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 40 минут назад, Skymod сказал: UPD: проверил, так тоже не работает cat_list должно называться {% if cat_list %} {% for catname in cat_list %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} 1 Надіслати Поділитися на інших сайтах More sharing options... Skymod Опубліковано: 30 березня 2021 Автор Share Опубліковано: 30 березня 2021 13 минут назад, buslikdrev сказал: cat_list должно называться {% if cat_list %} {% for catname in cat_list %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} Спасибо большое!) Всё работает Надіслати Поділитися на інших сайтах More sharing options... whiteblue Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 2 часа назад, Skymod сказал: Всем привет! Версия OpenCart 3.0.2.0 Столкнулся с проблемой, нужно вывести на страницу товара, категорию которой он принадлежит. Хотел сперва сделать через хлебные крошки, но потом понял что если найти товар по поиску, то там будет отображаться "Search", вместо категории. По этому такой вариант не подходит. Потом наткнулся на другой способ catalog/model/product/product.php public function getCategoryNames($product_id) { $query = $this->db->query("SELECT cd.name FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } catalog/controller/product/product.php После этого $data['points'] = $product_info['points'] Добавил $data['cat_list'] = $this->model_catalog_product->getCategoryNames($product_id); И в самом файле product.twig {% if catlist %} {% for catlist in catname %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} Но почему то ничего не выводит. Кеш конечно же очищал. Может тут что то не так?) Подскажите, пожалуйста должна быть готовая настройка Надіслати Поділитися на інших сайтах More sharing options... 2 years later... AlexMax13 Опубліковано: 15 червня 2023 Share Опубліковано: 15 червня 2023 решение для окстор если нужно вывести главную категорию в которую входит товар: модель, где то после: public function getCategories($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "'"); return $query->rows; } вставить это: public function getMainCategory($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "' AND main_category = '1'"); return (int)$query->row['category_id']; } в контроллер: $data['mid'] = $this->model_catalog_product->getMainCategory($this->request->get['product_id']); и в твиг это: {{ mid }} Надіслати Поділитися на інших сайтах More sharing options... 6 months later... Qdons Опубліковано: 22 грудня 2023 Share Опубліковано: 22 грудня 2023 (змінено) Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Змінено 22 грудня 2023 користувачем Qdons Надіслати Поділитися на інших сайтах More sharing options... Qdons Опубліковано: 23 грудня 2023 Share Опубліковано: 23 грудня 2023 22.12.2023 в 12:19, Qdons сказал: Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Розібрався! В модель в public function getProduct($product_id) { вставляємо: if ($query->num_rows) { $catdes_query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); if($catdes_query->num_rows) { $catdes = $catdes_query->row['description']; } else { $catdes = ""; } } Потім після: return array( 'product_id' => $query->row['product_id'], Вставляємо: 'catdes' => $catdes, В контролер після $data['points'] = $product_info['points']; всталяємо: $data['catdes'] = html_entity_decode($product_info['catdes'], ENT_QUOTES, 'UTF-8'); В твиг вставляємо: {% if catdes %} <div class="tab-pane" id="tab-catdes">{{ catdes }}</div> {% endif %} Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 3.x Opencart 3.x: Загальні питання Вывести название категории на странице товара Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Skymod Опубліковано: 30 березня 2021 Автор Share Опубліковано: 30 березня 2021 (змінено) 13 минут назад, buslikdrev сказал: {% for catlist in catname %} Попробуйте местами поменять В каком смысле?) Типа так: ? {% for catname in catlist %} UPD: проверил, так тоже не работает Змінено 30 березня 2021 користувачем Skymod Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 39 минут назад, Skymod сказал: $this->load->model('catalog/category') Я не обратил внимание. Такое подключение должно быть: $this->load->model('catalog/product') Также вам нужно удалить правки product.twig, если вносили через редактор тем. Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 40 минут назад, Skymod сказал: UPD: проверил, так тоже не работает cat_list должно называться {% if cat_list %} {% for catname in cat_list %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} 1 Надіслати Поділитися на інших сайтах More sharing options... Skymod Опубліковано: 30 березня 2021 Автор Share Опубліковано: 30 березня 2021 13 минут назад, buslikdrev сказал: cat_list должно называться {% if cat_list %} {% for catname in cat_list %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} Спасибо большое!) Всё работает Надіслати Поділитися на інших сайтах More sharing options... whiteblue Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 2 часа назад, Skymod сказал: Всем привет! Версия OpenCart 3.0.2.0 Столкнулся с проблемой, нужно вывести на страницу товара, категорию которой он принадлежит. Хотел сперва сделать через хлебные крошки, но потом понял что если найти товар по поиску, то там будет отображаться "Search", вместо категории. По этому такой вариант не подходит. Потом наткнулся на другой способ catalog/model/product/product.php public function getCategoryNames($product_id) { $query = $this->db->query("SELECT cd.name FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } catalog/controller/product/product.php После этого $data['points'] = $product_info['points'] Добавил $data['cat_list'] = $this->model_catalog_product->getCategoryNames($product_id); И в самом файле product.twig {% if catlist %} {% for catlist in catname %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} Но почему то ничего не выводит. Кеш конечно же очищал. Может тут что то не так?) Подскажите, пожалуйста должна быть готовая настройка Надіслати Поділитися на інших сайтах More sharing options... 2 years later... AlexMax13 Опубліковано: 15 червня 2023 Share Опубліковано: 15 червня 2023 решение для окстор если нужно вывести главную категорию в которую входит товар: модель, где то после: public function getCategories($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "'"); return $query->rows; } вставить это: public function getMainCategory($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "' AND main_category = '1'"); return (int)$query->row['category_id']; } в контроллер: $data['mid'] = $this->model_catalog_product->getMainCategory($this->request->get['product_id']); и в твиг это: {{ mid }} Надіслати Поділитися на інших сайтах More sharing options... 6 months later... Qdons Опубліковано: 22 грудня 2023 Share Опубліковано: 22 грудня 2023 (змінено) Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Змінено 22 грудня 2023 користувачем Qdons Надіслати Поділитися на інших сайтах More sharing options... Qdons Опубліковано: 23 грудня 2023 Share Опубліковано: 23 грудня 2023 22.12.2023 в 12:19, Qdons сказал: Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Розібрався! В модель в public function getProduct($product_id) { вставляємо: if ($query->num_rows) { $catdes_query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); if($catdes_query->num_rows) { $catdes = $catdes_query->row['description']; } else { $catdes = ""; } } Потім після: return array( 'product_id' => $query->row['product_id'], Вставляємо: 'catdes' => $catdes, В контролер після $data['points'] = $product_info['points']; всталяємо: $data['catdes'] = html_entity_decode($product_info['catdes'], ENT_QUOTES, 'UTF-8'); В твиг вставляємо: {% if catdes %} <div class="tab-pane" id="tab-catdes">{{ catdes }}</div> {% endif %} Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 3.x Opencart 3.x: Загальні питання Вывести название категории на странице товара Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
buslikdrev Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 39 минут назад, Skymod сказал: $this->load->model('catalog/category') Я не обратил внимание. Такое подключение должно быть: $this->load->model('catalog/product') Также вам нужно удалить правки product.twig, если вносили через редактор тем. Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 40 минут назад, Skymod сказал: UPD: проверил, так тоже не работает cat_list должно называться {% if cat_list %} {% for catname in cat_list %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} 1 Надіслати Поділитися на інших сайтах More sharing options... Skymod Опубліковано: 30 березня 2021 Автор Share Опубліковано: 30 березня 2021 13 минут назад, buslikdrev сказал: cat_list должно называться {% if cat_list %} {% for catname in cat_list %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} Спасибо большое!) Всё работает Надіслати Поділитися на інших сайтах More sharing options... whiteblue Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 2 часа назад, Skymod сказал: Всем привет! Версия OpenCart 3.0.2.0 Столкнулся с проблемой, нужно вывести на страницу товара, категорию которой он принадлежит. Хотел сперва сделать через хлебные крошки, но потом понял что если найти товар по поиску, то там будет отображаться "Search", вместо категории. По этому такой вариант не подходит. Потом наткнулся на другой способ catalog/model/product/product.php public function getCategoryNames($product_id) { $query = $this->db->query("SELECT cd.name FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } catalog/controller/product/product.php После этого $data['points'] = $product_info['points'] Добавил $data['cat_list'] = $this->model_catalog_product->getCategoryNames($product_id); И в самом файле product.twig {% if catlist %} {% for catlist in catname %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} Но почему то ничего не выводит. Кеш конечно же очищал. Может тут что то не так?) Подскажите, пожалуйста должна быть готовая настройка Надіслати Поділитися на інших сайтах More sharing options... 2 years later... AlexMax13 Опубліковано: 15 червня 2023 Share Опубліковано: 15 червня 2023 решение для окстор если нужно вывести главную категорию в которую входит товар: модель, где то после: public function getCategories($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "'"); return $query->rows; } вставить это: public function getMainCategory($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "' AND main_category = '1'"); return (int)$query->row['category_id']; } в контроллер: $data['mid'] = $this->model_catalog_product->getMainCategory($this->request->get['product_id']); и в твиг это: {{ mid }} Надіслати Поділитися на інших сайтах More sharing options... 6 months later... Qdons Опубліковано: 22 грудня 2023 Share Опубліковано: 22 грудня 2023 (змінено) Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Змінено 22 грудня 2023 користувачем Qdons Надіслати Поділитися на інших сайтах More sharing options... Qdons Опубліковано: 23 грудня 2023 Share Опубліковано: 23 грудня 2023 22.12.2023 в 12:19, Qdons сказал: Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Розібрався! В модель в public function getProduct($product_id) { вставляємо: if ($query->num_rows) { $catdes_query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); if($catdes_query->num_rows) { $catdes = $catdes_query->row['description']; } else { $catdes = ""; } } Потім після: return array( 'product_id' => $query->row['product_id'], Вставляємо: 'catdes' => $catdes, В контролер після $data['points'] = $product_info['points']; всталяємо: $data['catdes'] = html_entity_decode($product_info['catdes'], ENT_QUOTES, 'UTF-8'); В твиг вставляємо: {% if catdes %} <div class="tab-pane" id="tab-catdes">{{ catdes }}</div> {% endif %} Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 3.x Opencart 3.x: Загальні питання Вывести название категории на странице товара Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich
buslikdrev Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 40 минут назад, Skymod сказал: UPD: проверил, так тоже не работает cat_list должно называться {% if cat_list %} {% for catname in cat_list %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} 1 Надіслати Поділитися на інших сайтах More sharing options... Skymod Опубліковано: 30 березня 2021 Автор Share Опубліковано: 30 березня 2021 13 минут назад, buslikdrev сказал: cat_list должно называться {% if cat_list %} {% for catname in cat_list %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} Спасибо большое!) Всё работает Надіслати Поділитися на інших сайтах More sharing options... whiteblue Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 2 часа назад, Skymod сказал: Всем привет! Версия OpenCart 3.0.2.0 Столкнулся с проблемой, нужно вывести на страницу товара, категорию которой он принадлежит. Хотел сперва сделать через хлебные крошки, но потом понял что если найти товар по поиску, то там будет отображаться "Search", вместо категории. По этому такой вариант не подходит. Потом наткнулся на другой способ catalog/model/product/product.php public function getCategoryNames($product_id) { $query = $this->db->query("SELECT cd.name FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } catalog/controller/product/product.php После этого $data['points'] = $product_info['points'] Добавил $data['cat_list'] = $this->model_catalog_product->getCategoryNames($product_id); И в самом файле product.twig {% if catlist %} {% for catlist in catname %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} Но почему то ничего не выводит. Кеш конечно же очищал. Может тут что то не так?) Подскажите, пожалуйста должна быть готовая настройка Надіслати Поділитися на інших сайтах More sharing options... 2 years later... AlexMax13 Опубліковано: 15 червня 2023 Share Опубліковано: 15 червня 2023 решение для окстор если нужно вывести главную категорию в которую входит товар: модель, где то после: public function getCategories($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "'"); return $query->rows; } вставить это: public function getMainCategory($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "' AND main_category = '1'"); return (int)$query->row['category_id']; } в контроллер: $data['mid'] = $this->model_catalog_product->getMainCategory($this->request->get['product_id']); и в твиг это: {{ mid }} Надіслати Поділитися на інших сайтах More sharing options... 6 months later... Qdons Опубліковано: 22 грудня 2023 Share Опубліковано: 22 грудня 2023 (змінено) Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Змінено 22 грудня 2023 користувачем Qdons Надіслати Поділитися на інших сайтах More sharing options... Qdons Опубліковано: 23 грудня 2023 Share Опубліковано: 23 грудня 2023 22.12.2023 в 12:19, Qdons сказал: Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Розібрався! В модель в public function getProduct($product_id) { вставляємо: if ($query->num_rows) { $catdes_query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); if($catdes_query->num_rows) { $catdes = $catdes_query->row['description']; } else { $catdes = ""; } } Потім після: return array( 'product_id' => $query->row['product_id'], Вставляємо: 'catdes' => $catdes, В контролер після $data['points'] = $product_info['points']; всталяємо: $data['catdes'] = html_entity_decode($product_info['catdes'], ENT_QUOTES, 'UTF-8'); В твиг вставляємо: {% if catdes %} <div class="tab-pane" id="tab-catdes">{{ catdes }}</div> {% endif %} Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 3.x Opencart 3.x: Загальні питання Вывести название категории на странице товара
Skymod Опубліковано: 30 березня 2021 Автор Share Опубліковано: 30 березня 2021 13 минут назад, buslikdrev сказал: cat_list должно называться {% if cat_list %} {% for catname in cat_list %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} Спасибо большое!) Всё работает Надіслати Поділитися на інших сайтах More sharing options... whiteblue Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 2 часа назад, Skymod сказал: Всем привет! Версия OpenCart 3.0.2.0 Столкнулся с проблемой, нужно вывести на страницу товара, категорию которой он принадлежит. Хотел сперва сделать через хлебные крошки, но потом понял что если найти товар по поиску, то там будет отображаться "Search", вместо категории. По этому такой вариант не подходит. Потом наткнулся на другой способ catalog/model/product/product.php public function getCategoryNames($product_id) { $query = $this->db->query("SELECT cd.name FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } catalog/controller/product/product.php После этого $data['points'] = $product_info['points'] Добавил $data['cat_list'] = $this->model_catalog_product->getCategoryNames($product_id); И в самом файле product.twig {% if catlist %} {% for catlist in catname %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} Но почему то ничего не выводит. Кеш конечно же очищал. Может тут что то не так?) Подскажите, пожалуйста должна быть готовая настройка Надіслати Поділитися на інших сайтах More sharing options... 2 years later... AlexMax13 Опубліковано: 15 червня 2023 Share Опубліковано: 15 червня 2023 решение для окстор если нужно вывести главную категорию в которую входит товар: модель, где то после: public function getCategories($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "'"); return $query->rows; } вставить это: public function getMainCategory($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "' AND main_category = '1'"); return (int)$query->row['category_id']; } в контроллер: $data['mid'] = $this->model_catalog_product->getMainCategory($this->request->get['product_id']); и в твиг это: {{ mid }} Надіслати Поділитися на інших сайтах More sharing options... 6 months later... Qdons Опубліковано: 22 грудня 2023 Share Опубліковано: 22 грудня 2023 (змінено) Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Змінено 22 грудня 2023 користувачем Qdons Надіслати Поділитися на інших сайтах More sharing options... Qdons Опубліковано: 23 грудня 2023 Share Опубліковано: 23 грудня 2023 22.12.2023 в 12:19, Qdons сказал: Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Розібрався! В модель в public function getProduct($product_id) { вставляємо: if ($query->num_rows) { $catdes_query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); if($catdes_query->num_rows) { $catdes = $catdes_query->row['description']; } else { $catdes = ""; } } Потім після: return array( 'product_id' => $query->row['product_id'], Вставляємо: 'catdes' => $catdes, В контролер після $data['points'] = $product_info['points']; всталяємо: $data['catdes'] = html_entity_decode($product_info['catdes'], ENT_QUOTES, 'UTF-8'); В твиг вставляємо: {% if catdes %} <div class="tab-pane" id="tab-catdes">{{ catdes }}</div> {% endif %} Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку
whiteblue Опубліковано: 30 березня 2021 Share Опубліковано: 30 березня 2021 2 часа назад, Skymod сказал: Всем привет! Версия OpenCart 3.0.2.0 Столкнулся с проблемой, нужно вывести на страницу товара, категорию которой он принадлежит. Хотел сперва сделать через хлебные крошки, но потом понял что если найти товар по поиску, то там будет отображаться "Search", вместо категории. По этому такой вариант не подходит. Потом наткнулся на другой способ catalog/model/product/product.php public function getCategoryNames($product_id) { $query = $this->db->query("SELECT cd.name FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } catalog/controller/product/product.php После этого $data['points'] = $product_info['points'] Добавил $data['cat_list'] = $this->model_catalog_product->getCategoryNames($product_id); И в самом файле product.twig {% if catlist %} {% for catlist in catname %} <li>{{ catname.name }}</li> {% endfor %} {% endif %} Но почему то ничего не выводит. Кеш конечно же очищал. Может тут что то не так?) Подскажите, пожалуйста должна быть готовая настройка Надіслати Поділитися на інших сайтах More sharing options... 2 years later... AlexMax13 Опубліковано: 15 червня 2023 Share Опубліковано: 15 червня 2023 решение для окстор если нужно вывести главную категорию в которую входит товар: модель, где то после: public function getCategories($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "'"); return $query->rows; } вставить это: public function getMainCategory($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "' AND main_category = '1'"); return (int)$query->row['category_id']; } в контроллер: $data['mid'] = $this->model_catalog_product->getMainCategory($this->request->get['product_id']); и в твиг это: {{ mid }} Надіслати Поділитися на інших сайтах More sharing options... 6 months later... Qdons Опубліковано: 22 грудня 2023 Share Опубліковано: 22 грудня 2023 (змінено) Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Змінено 22 грудня 2023 користувачем Qdons Надіслати Поділитися на інших сайтах More sharing options... Qdons Опубліковано: 23 грудня 2023 Share Опубліковано: 23 грудня 2023 22.12.2023 в 12:19, Qdons сказал: Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Розібрався! В модель в public function getProduct($product_id) { вставляємо: if ($query->num_rows) { $catdes_query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); if($catdes_query->num_rows) { $catdes = $catdes_query->row['description']; } else { $catdes = ""; } } Потім після: return array( 'product_id' => $query->row['product_id'], Вставляємо: 'catdes' => $catdes, В контролер після $data['points'] = $product_info['points']; всталяємо: $data['catdes'] = html_entity_decode($product_info['catdes'], ENT_QUOTES, 'UTF-8'); В твиг вставляємо: {% if catdes %} <div class="tab-pane" id="tab-catdes">{{ catdes }}</div> {% endif %} Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1
AlexMax13 Опубліковано: 15 червня 2023 Share Опубліковано: 15 червня 2023 решение для окстор если нужно вывести главную категорию в которую входит товар: модель, где то после: public function getCategories($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "'"); return $query->rows; } вставить это: public function getMainCategory($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "' AND main_category = '1'"); return (int)$query->row['category_id']; } в контроллер: $data['mid'] = $this->model_catalog_product->getMainCategory($this->request->get['product_id']); и в твиг это: {{ mid }} Надіслати Поділитися на інших сайтах More sharing options...
Qdons Опубліковано: 22 грудня 2023 Share Опубліковано: 22 грудня 2023 (змінено) Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Змінено 22 грудня 2023 користувачем Qdons Надіслати Поділитися на інших сайтах More sharing options...
Qdons Опубліковано: 23 грудня 2023 Share Опубліковано: 23 грудня 2023 22.12.2023 в 12:19, Qdons сказал: Добрый день! Подскажите пожалуйста, таким же образом можна вывести описание категории в карточте товара? Как это можна сделать? ocStore Версія 3.0.2.0 Этот код работает: модель: public function getCategoryDescription($product_id) { $query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); return $query->rows; } в контроллер: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); и в твиг это: {% if cat_list %} {% for catname in cat_list %} {{ catname.description }} {% endfor %} {% endif %} Но выводит не в html, а вот так: <table> <tbody> <tr> <td style="text-align: center;" colspan="2"><a href="https://style.vents-mag.com.ua/" target="_blank" rel="noopener"><img src="https://vents-mag.com.ua/uploads/domestic_fans/Design_Concept/V_banner_DC_selection_1220x251px_UA.png" alt="" width="1000" height="206" /></a></td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЗАСТОСУВАННЯ</span> </td> </tr> <tr> <td> <ul> <li>Інноваційний витяжний вентилятор сумісний зі стильними декоративними панелями.</li> <li>Постійна або періодична витяжна вентиляція санвузлів, душових, кухонь та інших побутових приміщень.</li> </ul> </td> <td> <ul> <li>Висока витрата повітря у поєднанні з низьким рівнем шуму гарантує ідеальний мікроклімат.</li> <li>Для монтажу у вентиляційні шахти або з'єднання з повітропроводами діаметром 100, 125 та 150 мм.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">КОНСТРУКЦІЯ</span> </td> </tr> <tr> <td> <ul> <li>Корпус та крильчатка вентилятора виконані з високоякісного та міцного АБС-пластику, стійкого до ультрафіолету.</li> <li>Ступінь захисту — IP24.</li> </ul> </td> <td> <ul> <li>Конструкція крильчатки дозволяє підвищити ефективність вентилятора та термін служби двигуна.</li> </ul> </td> </tr> <tr> <td colspan="2"><span class="titleBlueBlock">ЕЛЕКТРОДВИГУН</span> </td> </tr> <tr> <td> <ul> <li>Призначений для безперервної роботи та не потребує обслуговування.</li> </ul> </td> <td> <ul> <li>Обладнаний захистом від перегрівання.</li> </ul> </td> </tr> </tbody> </table> Как добавить к: $data['cat_list'] = $this->model_catalog_product->getCategoryDescription($product_id); это: html_entity_decode Розібрався! В модель в public function getProduct($product_id) { вставляємо: if ($query->num_rows) { $catdes_query = $this->db->query("SELECT cd.description FROM " . DB_PREFIX . "category_description cd LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p2c.category_id = cd.category_id) WHERE p2c.product_id = '" . (int)$product_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); if($catdes_query->num_rows) { $catdes = $catdes_query->row['description']; } else { $catdes = ""; } } Потім після: return array( 'product_id' => $query->row['product_id'], Вставляємо: 'catdes' => $catdes, В контролер після $data['points'] = $product_info['points']; всталяємо: $data['catdes'] = html_entity_decode($product_info['catdes'], ENT_QUOTES, 'UTF-8'); В твиг вставляємо: {% if catdes %} <div class="tab-pane" id="tab-catdes">{{ catdes }}</div> {% endif %} Надіслати Поділитися на інших сайтах More sharing options...
Recommended Posts