Убираем xfsearch из ссылок поиска по доп полям DLE 11.x


Представляем на https://dle9.com/ хак Убираем xfsearch из ссылок поиска по доп полям для DLE 11.0 и выше.
Рабочий способ избавления от надоедливого xfsearch. Хак DLE 11.0 и выше убрать xfsearch из ссылок поиска по доп полям полностью уберет эту приставку из ссылок поиска по дополнительным новостям. Только для 11.0 и выше! Протестировано хак на DLE 11.2

Правок не много, приступим:

1. В файлах engine/modules/show.short.php, engine/modules/show.custom.php, engine/modules/topnews.php и два раза engine/modules/show.full.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]."/". urlencode( $value2 ) . "/">" . $value2 . "</a>";


2. Открываем engine/engine.php находим:


$url_page = $config['http_home_url'] . "xfsearch/" . urlencode ( str_replace("'", "'", $xf) );


или у вас может быть такая строчка!


$url_page = $config['http_home_url'] . "xfsearch/" . urlencode ( str_replace("&#039;", "'", $xf) );


и меняем на:


$url_page = $config['http_home_url'] . urlencode($_GET['xn']) . "/" . urlencode ( str_replace("&#039;", "'", $xf) );


3. В файле .htaccess находим


RewriteRule ^xfsearch/(.*)/page/([0-9]+)(/?)+$ index.php?do=xfsearch&xf=$1&cstart=$2 [L]


И после добавляем:


RewriteRule ^(year)/([^/]*)(/?)+$ index.php?do=xfsearch&xn=$1&xf=$2 [L]
RewriteRule ^(year)/([^/]*)/page/([0-9]+)(/?)+$ index.php?do=xfsearch&xn=$1&xf=$2&cstart=$3 [L]


Для примера, мы добавили дополнительное поле "год", если у вас больше дополнительных полей как перекрестных ссылок - то добавьте нужные вам поля.

Автор хака: Kubo
Версия DLE: 11.0 и выше
00

Комментарии (0)

Оставить комментарий

Кликните на изображение чтобы обновить код, если он неразборчив