Блог специалистов
27.10.2010

Сортировка по свойству элемента Битрикс

Бывает, что требуется вывести в первую очередь элементы, например, специального предложения, а потом все остальные. 

Для этого мы создаем свойство в инфоблоке, присваиваем ему значение и далее делаем просто сортировку по этому свойству. Вот код компонента Топ-каталога: 

Код
<?$APPLICATION->IncludeComponent( 
   "bitrix:catalog.top", 
   "", 
   Array( 
      "IBLOCK_TYPE" => "books", 
      "IBLOCK_ID" => "6", 
      "ELEMENT_SORT_FIELD" => "property_SROCHNO", 
      "ELEMENT_SORT_ORDER" => "desc", 
      "SECTION_URL" => "", 
      "DETAIL_URL" => "", 
      "BASKET_URL" => "/personal/basket.php", 
      "ACTION_VARIABLE" => "action", 
      "PRODUCT_ID_VARIABLE" => "id", 
      "PRODUCT_QUANTITY_VARIABLE" => "quantity", 
      "PRODUCT_PROPS_VARIABLE" => "prop", 
      "SECTION_ID_VARIABLE" => "SECTION_ID", 
      "DISPLAY_COMPARE" => "N", 
      "ELEMENT_COUNT" => "9", 
      "LINE_ELEMENT_COUNT" => "3", 
      "PROPERTY_CODE" => array("RAION", "TIP", "SDOMA", "ROOMS", "SUCHASTKA", "COMMUNIC", "TEL", "SROCHNO"), 
      "PRICE_CODE" => array(), 
      "USE_PRICE_COUNT" => "N", 
      "SHOW_PRICE_COUNT" => "1", 
      "PRICE_VAT_INCLUDE" => "Y", 
      "PRODUCT_PROPERTIES" => array(), 
      "USE_PRODUCT_QUANTITY" => "N", 
      "CACHE_TYPE" => "A", 
      "CACHE_TIME" => "3600", 
      "CACHE_GROUPS" => "Y" 
   ) 
);?>


В данном примере видно, что у меня есть свойство с кодом
Код SROCHNO

Чтобы отсортировать по этому свойству я добавил в код инфоблока: 

Код       "ELEMENT_SORT_FIELD" => "property_SROCHNO", 
      "ELEMENT_SORT_ORDER" => "desc", 


То есть нужно именно дописать property_ к коду, без этой подписи работать не будет. 

Успехов! 

Количество показов: 17081




Возврат к списку