Убираем xfsearch из адресной строки

Убираем xfsearch из адресной строки

Хак позволит убрать название xfsearch из адресной строки.


Установка:
1. Открыть engine/modules/show.short.php, engine/modules/show.full.php, engine/modules/show.custom.php и engine/modules/topnews.php и найти:
if( $config['allow_alt_url'] ) $value3[] = "<a href=\"" . $config['http_home_url'] . "xfsearch/" .$value[0]."/". urlencode( $value2 ) . "/\">" . $value2 . "</a>";

Заменить на:
if( $config['allow_alt_url'] ) $value3[] = "<a href=\"" . $config['http_home_url'] .$value[0]."/". rawurlencode( $value2 ) . "/\">" . $value2 . "</a>";

2. В engine/engine.php найти:
$url_page = $config['http_home_url'] . "xfsearch/" . rawurlencode ( str_replace(array("&#039;", "&quot;"), array("'", '"'), $xf) );

Заменить на:
$url_page = $config['http_home_url'] . rawurlencode($_GET['xn']) . "/" . rawurlencode ( str_replace(array("&#039;", "&quot;"), array("'", '"'), $xf) );

3. В корне сайта открыть .htaccess и найти:
RewriteRule ^xfsearch/(.*)/page/([0-9]+)(/?)+$ index.php?do=xfsearch&xf=$1&cstart=$2 [L]
RewriteRule ^xfsearch/(.*)/?$ index.php?do=xfsearch&xf=$1 [L]

Добавить ниже:
RewriteRule ^(Название_Доп.поля)/([^/]*)(/?)+$ index.php?do=xfsearch&xn=$1&xf=$2 [B,L]
RewriteRule ^(Название_Доп.поля)/([^/]*)/page/([0-9]+)(/?)+$ index.php?do=xfsearch&xn=$1&xf=$2&cstart=$3 [B,L]

Готово!
 
Версия DLE: 13.2
Автор: hent4iboys
Модификация: sas7110
Источник
Информация
Посетители, находящиеся в группе Гость, не могут оставлять комментарии к данной публикации.