HostCMS v.6. Вывод товаров по значению дополнительного свойства типа строка

HostCMS v.6. Вывод товаров по значению дополнительного свойства типа строка

Вам нужно вывести товары интернет-магазина по какому-то    определенному признаку?
Для начала создаем дополнительное свойство, пройдя по цепочке «
Интернет-магазин ⇒ Товар ⇒ Свойства товара». Создавая свойство товара, выберем Тип — Строка (к примеру). 

Для того, чтобы отфильтровать товары магазина по созданному нами Дополнительному свойству, вписываем в макет страницы следующий php код:

 <?php
          // ВЫВОД ТОВАРОВ ПО ЗНАЧЕНИЮ ДОПОЛНИТЕЛЬНОГО СВОЙСТВА
         if (Core::moduleIsActive ('shop'))
         {
              $Shop_Controller_Show = new Shop_Controller_Show (
                   Core_Entity::factory ('Shop', 3)
              ) ;
              $Shop_Controller_Show
                   ->xsl (
                        Core_Entity::factory ('Xsl')->getByName ('МагазинКаталогТоваровНаГлавнойСпецПред')
                   )
                   ->groupsMode ('none')
                   //->itemsForbiddenTags (array ('text'))
                   ->group (FALSE)
                    ->itemsProperties (TRUE)
                   ->limit (3);
              
// Объединение с нужной таблицей свойств
    $Shop_Controller_Show
        ->ShopItems ()
        ->queryBuilder ()
->where ('shop_items.active', '=', 1)
  ->clearOrderBy ()
  ->orderBy ('RAND ()') // в случайном порядке

        ->leftJoin ('shop_item_properties', 'shop_items.shop_id', '=', 'shop_item_properties.shop_id')
        ->leftJoin ('property_value_strings', 'shop_items.id', '=', 'property_value_strings.entity_id',
           array (
           array ('AND' ≥ array ('shop_item_properties.property_id', '=', Core_QueryBuilder::expression ('`property_value_strings`.`property_id`')))
           )
        )
        // Идентификатор дополнительного свойства
        ->where ('shop_item_properties.property_id', '=', 64) // здесь указываете id вашего дополнительного свойства
         // Значание дополнительного свойства
        ->where ('property_value_strings.value', '>', '0')
        ->groupBy ('shop_items.id')
        // Количество свойств
        ->having ('COUNT (shop_item_properties.shop_id)', '=', 1);              
         $Shop_Controller_Show->show ();
         }         
         ? >  

Понравилась статья?
Будем признательны, если поделитесь в соцсетях или мессенджерах, а также присоединитесь к нашей группе Вконтакте. Будет интересно!

Другие статьи по теме:

Как начать продавать онлайн из дома и зарабатывать деньги
Как начать продавать онлайн из дома и зарабатывать деньги

Развитие электронной коммерции произвело революцию в том, как компании, ИП и самозанятые продают свои товары и услуги. У вас есть неограниченный потенциал продавать онлайн  что угодно и кому угодно из любой точки России. Это дает вам доступ к миллионам пользователей Интернета по всей нашей необъятной стране для увеличения продаж и развития вашего бизнеса.

HOSTCMS v.6. Полезные php коды
HOSTCMS v.6. Полезные php коды

Некоторые полезные php коды для вывода данных на странице сайта.

HOSTCMS v.6. Полезные SQL запросы
HOSTCMS v.6. Полезные SQL запросы

Подборка SQL запросов к базе данных для сайтов на HostCMS v.6. Может быть очень полезной в некоторых случаях в пройцессе создания или обслуживания сайта...

HOSTCMS v.6. Краткая корзина в модальном окне
HOSTCMS v.6. Краткая корзина в модальном окне

Предлагаю вариант показа отложенного товара и содержимого краткой корзины в модальном окне в момент, когда Пользователь откладывает товар для совершения покупки. Решение делалось на основе встроенного в HostCMS адаптивного шаблона с подключеной библиотекой Bootstrap...

Анти-спам или как на странице сайта скрыть код формы от ботов?
Анти-спам или как на странице сайта скрыть код формы от ботов?

Не ошибусь, если скажу, что практически все владельцы сайтов сталкиваются с такой проблемой, как СПАМ. Это просто кошмар, когда ваш почтовый ящик ежедневно наполняется сотнями, а то и тысячами СПАМ-писем.

HostCMS v.6. Вертикальное меню на jQuery
HostCMS v.6. Вертикальное меню на jQuery

Простой пример левого вертикального выпадающего меню для групп товаров интернет магазина. Простая установка и настройка...

Мы используем cookie-файлы, чтобы получить статистику, которая помогает нам обеспечивать вас лучшим контентом. Вы можете прочитать подробнее о cookie-файлах или изменить настройки браузера. Отключение cookie-файлов может привести к неполадкам в работе сайта. Продолжая пользоваться сайтом без изменения настроек, вы даете согласие на использование ваших cookie-файлов. Это совершенно безопасно!