@spbty

Как преобразовать ЧПУ ссылку в обратный не чпу вид?

Здравствуйте! Есть задача: нужно сделать обратное преобзование чпу ссылки умного фильтра

Например есть кусок url
filter/dlina-from-150-to-160/apply/

его нужно преобразовать в строку вида например
?set_filter=y&arFilterCatalog_49_MIN=150&arFilterCatalog_49_MAX=160

т.е. обратно в нечпушный вид

подскажите пожалуйста каким образом можно это сделать, может быть есть апи какое нибудь или готовые примеры

заранее спасибо
  • Вопрос задан
  • 220 просмотров
Пригласить эксперта
Ответы на вопрос 1
@spbty Автор вопроса
решил так

в своем компоненте который вызывается до умного фильтра создал глобальную переменную куда передавал строку чпушного вида

в файле component умного фильтра на 322 строке вставил проверку на эту глобальную переменную и если она не пустая то использовал convertUrlToCheck() , вот кусок кода с этого места ,жирным выделенна моя глоб переменная

if(isset($_REQUEST["ajax"]) && $_REQUEST["ajax"] === "y")
$_CHECK = &$_REQUEST;
elseif(isset($_REQUEST["del_filter"]))
$_CHECK = array();
elseif(isset($_GET["set_filter"]))
$_CHECK = &$_GET;
elseif($arParams["SMART_FILTER_PATH"])
$_CHECK = $this->convertUrlToCheck($arParams["~SMART_FILTER_PATH"]);
elseif($arParams["SAVE_IN_SESSION"] && isset($_SESSION[$FILTER_NAME][$this->SECTION_ID]))
$_CHECK = $_SESSION[$FILTER_NAME][$this->SECTION_ID];
elseif($GLOBALS['PODBORKI']['PODBORKA_FILTER'])
$_CHECK = $this->convertUrlToCheck( $GLOBALS['PODBORKI']['PODBORKA_FILTER']);

else
$_CHECK = array();
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы