Sinecuraweb
@Sinecuraweb
прошарен на 10%

Как привязать 'current' к другой ссылке(Фильтр на битрикс)?

Есть такой кусок кода :
<div class="sort_filter">
					<?	
					$arAvailableSort = array();
					$arSorts = $arParams["SORT_BUTTONS"];
					if(in_array("POPULARITY", $arSorts)){
						$arAvailableSort["SHOWS"] = array("SHOWS", "desc");
					}
					if(in_array("NAME", $arSorts)){
						$arAvailableSort["NAME"] = array("NAME", "asc");
					}
					if(in_array("PRICE", $arSorts)){ 
						$arSortPrices = $arParams["SORT_PRICES"];
						if($arSortPrices == "MINIMUM_PRICE" || $arSortPrices == "MAXIMUM_PRICE"){
							$arAvailableSort["PRICE"] = array("PROPERTY_".$arSortPrices, "desc");
						}
						else{
							$price = CCatalogGroup::GetList(array(), array("NAME" => $arParams["SORT_PRICES"]), false, false, array("ID", "NAME"))->GetNext();
							$arAvailableSort["PRICE"] = array("CATALOG_PRICE_".$price["ID"], "desc"); 
						}
					}
					if(in_array("QUANTITY", $arSorts)){
						$arAvailableSort["CATALOG_AVAILABLE"] = array("QUANTITY", "desc");
					}
					$sort = "SHOWS";
					if((array_key_exists("sort", $_REQUEST) && array_key_exists(ToUpper($_REQUEST["sort"]), $arAvailableSort)) || (array_key_exists("sort", $_SESSION) && array_key_exists(ToUpper($_SESSION["sort"]), $arAvailableSort)) || $arParams["ELEMENT_SORT_FIELD"]){
						if($_REQUEST["sort"]){
							$sort = ToUpper($_REQUEST["sort"]); 
							$_SESSION["sort"] = ToUpper($_REQUEST["sort"]);
						}
						elseif($_SESSION["sort"]){
							$sort = ToUpper($_SESSION["sort"]);
						}
						else{
							$sort = ToUpper($arParams["ELEMENT_SORT_FIELD"]);
						}
					}

					$sort_order=$arAvailableSort[$sort][1];
					if((array_key_exists("order", $_REQUEST) && in_array(ToLower($_REQUEST["order"]), Array("asc", "desc"))) || (array_key_exists("order", $_REQUEST) && in_array(ToLower($_REQUEST["order"]), Array("asc", "desc")) ) || $arParams["ELEMENT_SORT_ORDER"]){
						if($_REQUEST["order"]){
							$sort_order = $_REQUEST["order"];
							$_SESSION["order"] = $_REQUEST["order"];
						}
						elseif($_SESSION["order"]){
							$sort_order = $_SESSION["order"];
						}
						else{
							$sort_order = ToLower($arParams["ELEMENT_SORT_ORDER"]);
						}
					}
					?>
					<?foreach($arAvailableSort as $key => $val):?>
						<?$newSort = $sort_order == 'desc' ? 'asc' : 'desc';?>
						<a rel="nofollow" href="<?=$APPLICATION->GetCurPageParam('sort='.$key.'&order='.$newSort, 	array('sort', 'order'))?>" class="sort_btn <?=($sort == $key ? 'current' : '')?> <?=$sort_order?> <?=$key?>" rel="nofollow">
							<i class="icon" title="<?=GetMessage('SECT_SORT_'.$key)?>"></i><span><?=GetMessage('SECT_SORT_'.$key)?></span><i class="arr"></i>
						</a>
					<?endforeach;?>
					<?
					if($sort == "PRICE"){
						$sort = $arAvailableSort["PRICE"][0];
					}
					if($sort == "CATALOG_AVAILABLE"){
						$sort = "CATALOG_QUANTITY";
					}
					?>
				</div>


он выводит на странице фильтр сортировки : По популярности, по алфавиту, по цене

Не могу въехать почему класс "current" добавляется именно "по алфавиту"? мне надо поменять ,что бы по умолчанию была "популярность" , помогите ребят)
ссылка такого типа формируется:
213.159.214.90/catalog/planshety/apple_ipad_air_2/...
  • Вопрос задан
  • 219 просмотров
Пригласить эксперта
Ответы на вопрос 1
babarun
@babarun Куратор тега 1С-Битрикс
Безумный план моих идей в руках больных людей
Что указано в настройках компонента в поле "ELEMENT_SORT_FIELD" ?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы