alexvdv Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Всем привет. Подскажите, что делаю не правильно. Делаю вывод всех товаров на одной странице (прайс-лист) Должно получиться так: Категория товара: - все товары из категории Категория товара 2: - все товары из категории 2 Категория товара 3: - все товары из категории 3 И так со всеми товарами магазина. Но получается следующая картина, сначала выводятся все категории магазина, затем все товары магазина, цикл внутри цикла не работает правильно. В контроллере: $data['categories'] = array(); $allcategories = $this->model_catalog_category->getCategories(0); foreach ($allcategories as $category) { $data['categories'][] = array( 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts(0) . ')' : ''), 'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $category['category_id'] . $url) ); } $category_allproducts = []; $allproducts = $this->model_catalog_product->getProducts($category['category_id']); //$allcategories = $this->model_catalog_category->getCategories($category['category_id']); if(!empty($allproducts)){ foreach ($allproducts as $product) { //3 $category_allproducts[] = array ( 'name' => $product['name'], 'href' => $this->url->link('product/product', 'product_id=' . $product['product_id']), ); } } // Level 1 $data['categories'][] = array( 'products' => $category_allproducts, 'name' => $product['name'], 'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $category['category_id'] . $url) ); Представление: <?php foreach ($categories as $category) { ?> <h2><?php echo $category['name']; ?></h2> <div class="row"> <?php foreach ($category['products'] as $product) { ?> оформление карточки <?php } ?> </div> <?php } ?> Что делаю не так? Надіслати Поділитися на інших сайтах More sharing options...
baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 (змінено) $allproducts = $this->model_catalog_product->getProducts($category['category_id']); Эта функция принимает массив с данными для фильтрации, чтобы фильтрануть по категории нужно передать в нее массив типа этого $filter['filter_category_id'] = $category['category_id']; Змінено 3 травня 2017 користувачем baster789 Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 + у вас закрыт первый foreach и ссылка на $category по-идее проходить не должна Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 еще закрыт 3 цикл а в конце вы ссылаетесь на product['name'], и вы дважды забиваете категории в $data[''categories''] В начале и на level 1, в итоге у вас сначала в выводе появляются просто категории Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Я сейчас немного туго соображаю, но должно быть что-то вроде этого, как я понял $allcategories = $this->model_catalog_category->getCategories(0); foreach ($allcategories as $category) { $category_allproducts = []; $filter['filter_category_id'] = $category['category_id']; $allproducts = $this->model_catalog_product->getProducts($filter); if(!empty($allproducts)){ foreach ($allproducts as $product) { //3 $category_allproducts[] = array ( 'name' => $product['name'], 'href' => $this->url->link('product/product', 'product_id=' . $product['product_id']), ); } } // Level 1 $data['categories'][] = array( 'products' => $category_allproducts, 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts(0) . ')' : ''), 'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $category['category_id'] . $url) ); } Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: Я сейчас немного туго соображаю, но должно быть что-то вроде этого, как я понял $allcategories = $this->model_catalog_category->getCategories(0); foreach ($allcategories as $category) { $category_allproducts = []; $filter['filter_category_id'] = $category['category_id']; $allproducts = $this->model_catalog_product->getProducts($filter); if(!empty($allproducts)){ foreach ($allproducts as $product) { //3 $category_allproducts[] = array ( 'name' => $product['name'], 'href' => $this->url->link('product/product', 'product_id=' . $product['product_id']), ); } } // Level 1 $data['categories'][] = array( 'products' => $category_allproducts, 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts(0) . ')' : ''), 'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $category['category_id'] . $url) ); } Спасибо большое за помощь, так все работает отлично, буду теперь вникать Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Обращайтесь:) Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: Обращайтесь:) Еще добавил вывод товаров из подкатегории в родительскую, сделал так: $filter_data = array( 'filter_category_id' => $category['category_id'], 'filter_sub_category' => true ); $allproducts = $this->model_catalog_product->getProducts($filter_data); Все вроде работает как надо, так правильно? Еще один вопрос, у меня почему-то когда идет вывод последней категории, при том что уже категории закончились создается еще одна категория, которая создаваться не должна из названия товара произвольно http://prnt.sc/f3odfm Почему так происходит и как это исправить? Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Только что, alexvdv сказал: Еще добавил вывод товаров из подкатегории в родительскую, сделал так: $filter_data = array( 'filter_category_id' => $category['category_id'], 'filter_sub_category' => true ); $allproducts = $this->model_catalog_product->getProducts($filter_data); Все вроде работает как надо, так правильно? Еще один вопрос, у меня почему-то когда идет вывод последней категории, при том что уже категории закончились создается еще одна категория, которая создаваться не должна из названия товара произвольно http://prnt.sc/f3odfm Почему так происходит и как это исправить? Не правильно) sub_category тоже id сообщается, только уже подкатегории Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 И кстати, чтобы правильно товары считались в кате тоже филтр передать нужно 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Хотя я немного не так выразился про неправильно, все правильно в вашем случае) хотя я могу тупить Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: И кстати, чтобы правильно товары считались в кате тоже филтр передать нужно 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), а как бороться с этим http://prnt.sc/f3odfm? Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, alexvdv сказал: а как бороться с этим http://prnt.sc/f3odfm? Все разобрался, был дублирующий массив в контроллере , удалил и все норм))) Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Почему foreach (opencart) внутри другого цикла не срабатывает Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень 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 і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 + у вас закрыт первый foreach и ссылка на $category по-идее проходить не должна Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 еще закрыт 3 цикл а в конце вы ссылаетесь на product['name'], и вы дважды забиваете категории в $data[''categories''] В начале и на level 1, в итоге у вас сначала в выводе появляются просто категории Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Я сейчас немного туго соображаю, но должно быть что-то вроде этого, как я понял $allcategories = $this->model_catalog_category->getCategories(0); foreach ($allcategories as $category) { $category_allproducts = []; $filter['filter_category_id'] = $category['category_id']; $allproducts = $this->model_catalog_product->getProducts($filter); if(!empty($allproducts)){ foreach ($allproducts as $product) { //3 $category_allproducts[] = array ( 'name' => $product['name'], 'href' => $this->url->link('product/product', 'product_id=' . $product['product_id']), ); } } // Level 1 $data['categories'][] = array( 'products' => $category_allproducts, 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts(0) . ')' : ''), 'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $category['category_id'] . $url) ); } Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: Я сейчас немного туго соображаю, но должно быть что-то вроде этого, как я понял $allcategories = $this->model_catalog_category->getCategories(0); foreach ($allcategories as $category) { $category_allproducts = []; $filter['filter_category_id'] = $category['category_id']; $allproducts = $this->model_catalog_product->getProducts($filter); if(!empty($allproducts)){ foreach ($allproducts as $product) { //3 $category_allproducts[] = array ( 'name' => $product['name'], 'href' => $this->url->link('product/product', 'product_id=' . $product['product_id']), ); } } // Level 1 $data['categories'][] = array( 'products' => $category_allproducts, 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts(0) . ')' : ''), 'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $category['category_id'] . $url) ); } Спасибо большое за помощь, так все работает отлично, буду теперь вникать Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Обращайтесь:) Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: Обращайтесь:) Еще добавил вывод товаров из подкатегории в родительскую, сделал так: $filter_data = array( 'filter_category_id' => $category['category_id'], 'filter_sub_category' => true ); $allproducts = $this->model_catalog_product->getProducts($filter_data); Все вроде работает как надо, так правильно? Еще один вопрос, у меня почему-то когда идет вывод последней категории, при том что уже категории закончились создается еще одна категория, которая создаваться не должна из названия товара произвольно http://prnt.sc/f3odfm Почему так происходит и как это исправить? Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Только что, alexvdv сказал: Еще добавил вывод товаров из подкатегории в родительскую, сделал так: $filter_data = array( 'filter_category_id' => $category['category_id'], 'filter_sub_category' => true ); $allproducts = $this->model_catalog_product->getProducts($filter_data); Все вроде работает как надо, так правильно? Еще один вопрос, у меня почему-то когда идет вывод последней категории, при том что уже категории закончились создается еще одна категория, которая создаваться не должна из названия товара произвольно http://prnt.sc/f3odfm Почему так происходит и как это исправить? Не правильно) sub_category тоже id сообщается, только уже подкатегории Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 И кстати, чтобы правильно товары считались в кате тоже филтр передать нужно 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Хотя я немного не так выразился про неправильно, все правильно в вашем случае) хотя я могу тупить Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: И кстати, чтобы правильно товары считались в кате тоже филтр передать нужно 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), а как бороться с этим http://prnt.sc/f3odfm? Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, alexvdv сказал: а как бороться с этим http://prnt.sc/f3odfm? Все разобрался, был дублирующий массив в контроллере , удалил и все норм))) Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Почему foreach (opencart) внутри другого цикла не срабатывает Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень 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 і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 еще закрыт 3 цикл а в конце вы ссылаетесь на product['name'], и вы дважды забиваете категории в $data[''categories''] В начале и на level 1, в итоге у вас сначала в выводе появляются просто категории Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Я сейчас немного туго соображаю, но должно быть что-то вроде этого, как я понял $allcategories = $this->model_catalog_category->getCategories(0); foreach ($allcategories as $category) { $category_allproducts = []; $filter['filter_category_id'] = $category['category_id']; $allproducts = $this->model_catalog_product->getProducts($filter); if(!empty($allproducts)){ foreach ($allproducts as $product) { //3 $category_allproducts[] = array ( 'name' => $product['name'], 'href' => $this->url->link('product/product', 'product_id=' . $product['product_id']), ); } } // Level 1 $data['categories'][] = array( 'products' => $category_allproducts, 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts(0) . ')' : ''), 'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $category['category_id'] . $url) ); } Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: Я сейчас немного туго соображаю, но должно быть что-то вроде этого, как я понял $allcategories = $this->model_catalog_category->getCategories(0); foreach ($allcategories as $category) { $category_allproducts = []; $filter['filter_category_id'] = $category['category_id']; $allproducts = $this->model_catalog_product->getProducts($filter); if(!empty($allproducts)){ foreach ($allproducts as $product) { //3 $category_allproducts[] = array ( 'name' => $product['name'], 'href' => $this->url->link('product/product', 'product_id=' . $product['product_id']), ); } } // Level 1 $data['categories'][] = array( 'products' => $category_allproducts, 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts(0) . ')' : ''), 'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $category['category_id'] . $url) ); } Спасибо большое за помощь, так все работает отлично, буду теперь вникать Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Обращайтесь:) Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: Обращайтесь:) Еще добавил вывод товаров из подкатегории в родительскую, сделал так: $filter_data = array( 'filter_category_id' => $category['category_id'], 'filter_sub_category' => true ); $allproducts = $this->model_catalog_product->getProducts($filter_data); Все вроде работает как надо, так правильно? Еще один вопрос, у меня почему-то когда идет вывод последней категории, при том что уже категории закончились создается еще одна категория, которая создаваться не должна из названия товара произвольно http://prnt.sc/f3odfm Почему так происходит и как это исправить? Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Только что, alexvdv сказал: Еще добавил вывод товаров из подкатегории в родительскую, сделал так: $filter_data = array( 'filter_category_id' => $category['category_id'], 'filter_sub_category' => true ); $allproducts = $this->model_catalog_product->getProducts($filter_data); Все вроде работает как надо, так правильно? Еще один вопрос, у меня почему-то когда идет вывод последней категории, при том что уже категории закончились создается еще одна категория, которая создаваться не должна из названия товара произвольно http://prnt.sc/f3odfm Почему так происходит и как это исправить? Не правильно) sub_category тоже id сообщается, только уже подкатегории Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 И кстати, чтобы правильно товары считались в кате тоже филтр передать нужно 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Хотя я немного не так выразился про неправильно, все правильно в вашем случае) хотя я могу тупить Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: И кстати, чтобы правильно товары считались в кате тоже филтр передать нужно 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), а как бороться с этим http://prnt.sc/f3odfm? Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, alexvdv сказал: а как бороться с этим http://prnt.sc/f3odfm? Все разобрался, был дублирующий массив в контроллере , удалил и все норм))) Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Почему foreach (opencart) внутри другого цикла не срабатывает Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень 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 і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Я сейчас немного туго соображаю, но должно быть что-то вроде этого, как я понял $allcategories = $this->model_catalog_category->getCategories(0); foreach ($allcategories as $category) { $category_allproducts = []; $filter['filter_category_id'] = $category['category_id']; $allproducts = $this->model_catalog_product->getProducts($filter); if(!empty($allproducts)){ foreach ($allproducts as $product) { //3 $category_allproducts[] = array ( 'name' => $product['name'], 'href' => $this->url->link('product/product', 'product_id=' . $product['product_id']), ); } } // Level 1 $data['categories'][] = array( 'products' => $category_allproducts, 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts(0) . ')' : ''), 'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $category['category_id'] . $url) ); } Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: Я сейчас немного туго соображаю, но должно быть что-то вроде этого, как я понял $allcategories = $this->model_catalog_category->getCategories(0); foreach ($allcategories as $category) { $category_allproducts = []; $filter['filter_category_id'] = $category['category_id']; $allproducts = $this->model_catalog_product->getProducts($filter); if(!empty($allproducts)){ foreach ($allproducts as $product) { //3 $category_allproducts[] = array ( 'name' => $product['name'], 'href' => $this->url->link('product/product', 'product_id=' . $product['product_id']), ); } } // Level 1 $data['categories'][] = array( 'products' => $category_allproducts, 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts(0) . ')' : ''), 'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $category['category_id'] . $url) ); } Спасибо большое за помощь, так все работает отлично, буду теперь вникать Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Обращайтесь:) Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: Обращайтесь:) Еще добавил вывод товаров из подкатегории в родительскую, сделал так: $filter_data = array( 'filter_category_id' => $category['category_id'], 'filter_sub_category' => true ); $allproducts = $this->model_catalog_product->getProducts($filter_data); Все вроде работает как надо, так правильно? Еще один вопрос, у меня почему-то когда идет вывод последней категории, при том что уже категории закончились создается еще одна категория, которая создаваться не должна из названия товара произвольно http://prnt.sc/f3odfm Почему так происходит и как это исправить? Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Только что, alexvdv сказал: Еще добавил вывод товаров из подкатегории в родительскую, сделал так: $filter_data = array( 'filter_category_id' => $category['category_id'], 'filter_sub_category' => true ); $allproducts = $this->model_catalog_product->getProducts($filter_data); Все вроде работает как надо, так правильно? Еще один вопрос, у меня почему-то когда идет вывод последней категории, при том что уже категории закончились создается еще одна категория, которая создаваться не должна из названия товара произвольно http://prnt.sc/f3odfm Почему так происходит и как это исправить? Не правильно) sub_category тоже id сообщается, только уже подкатегории Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 И кстати, чтобы правильно товары считались в кате тоже филтр передать нужно 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Хотя я немного не так выразился про неправильно, все правильно в вашем случае) хотя я могу тупить Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: И кстати, чтобы правильно товары считались в кате тоже филтр передать нужно 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), а как бороться с этим http://prnt.sc/f3odfm? Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, alexvdv сказал: а как бороться с этим http://prnt.sc/f3odfm? Все разобрался, был дублирующий массив в контроллере , удалил и все норм))) Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Почему foreach (opencart) внутри другого цикла не срабатывает Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень 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 і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: Я сейчас немного туго соображаю, но должно быть что-то вроде этого, как я понял $allcategories = $this->model_catalog_category->getCategories(0); foreach ($allcategories as $category) { $category_allproducts = []; $filter['filter_category_id'] = $category['category_id']; $allproducts = $this->model_catalog_product->getProducts($filter); if(!empty($allproducts)){ foreach ($allproducts as $product) { //3 $category_allproducts[] = array ( 'name' => $product['name'], 'href' => $this->url->link('product/product', 'product_id=' . $product['product_id']), ); } } // Level 1 $data['categories'][] = array( 'products' => $category_allproducts, 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts(0) . ')' : ''), 'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $category['category_id'] . $url) ); } Спасибо большое за помощь, так все работает отлично, буду теперь вникать Надіслати Поділитися на інших сайтах More sharing options...
baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Обращайтесь:) Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: Обращайтесь:) Еще добавил вывод товаров из подкатегории в родительскую, сделал так: $filter_data = array( 'filter_category_id' => $category['category_id'], 'filter_sub_category' => true ); $allproducts = $this->model_catalog_product->getProducts($filter_data); Все вроде работает как надо, так правильно? Еще один вопрос, у меня почему-то когда идет вывод последней категории, при том что уже категории закончились создается еще одна категория, которая создаваться не должна из названия товара произвольно http://prnt.sc/f3odfm Почему так происходит и как это исправить? Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Только что, alexvdv сказал: Еще добавил вывод товаров из подкатегории в родительскую, сделал так: $filter_data = array( 'filter_category_id' => $category['category_id'], 'filter_sub_category' => true ); $allproducts = $this->model_catalog_product->getProducts($filter_data); Все вроде работает как надо, так правильно? Еще один вопрос, у меня почему-то когда идет вывод последней категории, при том что уже категории закончились создается еще одна категория, которая создаваться не должна из названия товара произвольно http://prnt.sc/f3odfm Почему так происходит и как это исправить? Не правильно) sub_category тоже id сообщается, только уже подкатегории Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 И кстати, чтобы правильно товары считались в кате тоже филтр передать нужно 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Хотя я немного не так выразился про неправильно, все правильно в вашем случае) хотя я могу тупить Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: И кстати, чтобы правильно товары считались в кате тоже филтр передать нужно 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), а как бороться с этим http://prnt.sc/f3odfm? Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, alexvdv сказал: а как бороться с этим http://prnt.sc/f3odfm? Все разобрался, был дублирующий массив в контроллере , удалил и все норм))) Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Почему foreach (opencart) внутри другого цикла не срабатывает Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich
alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: Обращайтесь:) Еще добавил вывод товаров из подкатегории в родительскую, сделал так: $filter_data = array( 'filter_category_id' => $category['category_id'], 'filter_sub_category' => true ); $allproducts = $this->model_catalog_product->getProducts($filter_data); Все вроде работает как надо, так правильно? Еще один вопрос, у меня почему-то когда идет вывод последней категории, при том что уже категории закончились создается еще одна категория, которая создаваться не должна из названия товара произвольно http://prnt.sc/f3odfm Почему так происходит и как это исправить? Надіслати Поділитися на інших сайтах More sharing options...
baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Только что, alexvdv сказал: Еще добавил вывод товаров из подкатегории в родительскую, сделал так: $filter_data = array( 'filter_category_id' => $category['category_id'], 'filter_sub_category' => true ); $allproducts = $this->model_catalog_product->getProducts($filter_data); Все вроде работает как надо, так правильно? Еще один вопрос, у меня почему-то когда идет вывод последней категории, при том что уже категории закончились создается еще одна категория, которая создаваться не должна из названия товара произвольно http://prnt.sc/f3odfm Почему так происходит и как это исправить? Не правильно) sub_category тоже id сообщается, только уже подкатегории Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 И кстати, чтобы правильно товары считались в кате тоже филтр передать нужно 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Хотя я немного не так выразился про неправильно, все правильно в вашем случае) хотя я могу тупить Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: И кстати, чтобы правильно товары считались в кате тоже филтр передать нужно 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), а как бороться с этим http://prnt.sc/f3odfm? Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, alexvdv сказал: а как бороться с этим http://prnt.sc/f3odfm? Все разобрался, был дублирующий массив в контроллере , удалил и все норм))) Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Почему foreach (opencart) внутри другого цикла не срабатывает
baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 И кстати, чтобы правильно товары считались в кате тоже филтр передать нужно 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), Надіслати Поділитися на інших сайтах More sharing options... baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Хотя я немного не так выразился про неправильно, все правильно в вашем случае) хотя я могу тупить Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: И кстати, чтобы правильно товары считались в кате тоже филтр передать нужно 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), а как бороться с этим http://prnt.sc/f3odfm? Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, alexvdv сказал: а как бороться с этим http://prnt.sc/f3odfm? Все разобрался, был дублирующий массив в контроллере , удалил и все норм))) Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку
baster789 Опубліковано: 3 травня 2017 Share Опубліковано: 3 травня 2017 Хотя я немного не так выразился про неправильно, все правильно в вашем случае) хотя я могу тупить Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: И кстати, чтобы правильно товары считались в кате тоже филтр передать нужно 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), а как бороться с этим http://prnt.sc/f3odfm? Надіслати Поділитися на інших сайтах More sharing options... alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, alexvdv сказал: а как бороться с этим http://prnt.sc/f3odfm? Все разобрался, был дублирующий массив в контроллере , удалил и все норм))) Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0
alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, baster789 сказал: И кстати, чтобы правильно товары считались в кате тоже филтр передать нужно 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), а как бороться с этим http://prnt.sc/f3odfm? Надіслати Поділитися на інших сайтах More sharing options...
alexvdv Опубліковано: 3 травня 2017 Автор Share Опубліковано: 3 травня 2017 Только что, alexvdv сказал: а как бороться с этим http://prnt.sc/f3odfm? Все разобрался, был дублирующий массив в контроллере , удалил и все норм))) Надіслати Поділитися на інших сайтах More sharing options...
Recommended Posts