[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Проблема с ЧПУ в модуле OCfilter (opencart 2.3)
u1timate
Такая проблема. Поставил фильтровый модуль OCFilter. Фильтр настроил, работает нормально. Только не могу понять как изменить вид ссылок в модуле. Сейчас ссылки такого типа: сайт/категория/бренд/ название-фильтра/ Значение-фильтра, а необходимо: сайт/категория/бренд_название-фильтра_значение-фильтра. Было несколько попыток изменить код контроллера фильтра. Вот что получилось:

foreach ($params as $option_id => $values) {
if ($option_id == 'p') {
$path .= '/price';
} else if ($option_id == 's') {
$path .= '/sklad';
} else if ($option_id != 'm') {
$query = $this->db->query("SELECT keyword FROM " . DB_PREFIX . "ocfilter_option WHERE option_id = '" . (int)$option_id . "'");

if ($query->num_rows && $query->row['keyword']) {
if ($option_id == 'm'){
$path .= '_' . $query->row['keyword'];
}else{
$path .= '/' . $query->row['keyword'];
}

} else {
$path .= '/' . $option_id;
}
}


foreach ($values as $value_id) {
$query = false;

if ($option_id == 'm') {
$query = $this->db->query("SELECT keyword FROM " . DB_PREFIX . "url_alias WHERE `query` = 'manufacturer_id=" . (int)$value_id . "'");
} else if (isID($value_id)) {
$query = $this->db->query("SELECT keyword FROM " . DB_PREFIX . "ocfilter_option_value WHERE value_id = '" . $this->db->escape((string)$value_id) . "'");
}

if ($query && $query->num_rows && $query->row['keyword']) {
if ($option_id != 'm'){
$path .= '_' . $query->row['keyword'];
}else{
$path .= '/' . $query->row['keyword'];
}

}

else {
$path .= '_' . $value_id;
}
}

}



+ изменил:


$_route_ = $this->request->get['_route_'];
$_route_ = str_replace('_','/',$_route_);
$keywords = explode('/', $_route_);


Ссылка сейчас такого вида: сайт/категория/бренд_название-фильтра_значение-фильтра.

Но когда выбираю просто фильтр без бренда, то получается такое: сайт/категория_название-фильтра_значение-фильтра.

Помогите советом, что я делаю не так, и как это можно исправить. Бьюсь уже 3 день и не получается. Заранее всем спасибо!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.