• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

Хак Меняем xfsearch на свое слово [dle 11.0]

DomiTori

Постоялец
Регистрация
15 Июл 2015
Сообщения
92
Реакции
88
Данным хаком мы заменим xfsearch в адресной строке на свое слово, например find, sort, search или любое другое. Хак предназначен только для версии DLE 11.0.

Открываем /engine/engine.php
Ищем в нем код
PHP:
if($xfname) {
              
                $url_page = $config['http_home_url'] . "xfsearch/{$xfname}/" . urlencode ( str_replace("'", "'", $xf) );
                $user_query = "do=xfsearch&xfname=".$xfname."&xf=" . urlencode ( str_replace("'", "'", $xf) );
                $db->query ( "SELECT news_id FROM " . PREFIX . "_xfsearch WHERE tagname='{$xfname}' AND tagvalue='{$xf}'" );
              
            } else {
                $url_page = $config['http_home_url'] . "xfsearch/" . urlencode ( str_replace("'", "'", $xf) );
                $user_query = "do=xfsearch&xf=" . urlencode ( str_replace("'", "'", $xf) );
                $db->query ( "SELECT news_id FROM " . PREFIX . "_xfsearch WHERE tagvalue='{$xf}'" );
            }
заменяем этот код на
PHP:
$url_page = $config['http_home_url'] . "find/{$xfname}/" . urlencode ( str_replace("'", "'", $xf) );
                $user_query = "do=xfsearch&xfname=".$xfname."&xf=" . urlencode ( str_replace("'", "'", $xf) );
                $db->query ( "SELECT news_id FROM " . PREFIX . "_xfsearch WHERE tagname='{$xfname}' AND tagvalue='{$xf}'" );
Далее в файлах /engine/modules/show.custom.php, show.full.php (тут два раза) и show.short.php заменяем
PHP:
"xfsearch/"
на
PHP:
"find/"
И напоследок, открываем .htaccess в корне сайта, ищем в нем
PHP:
# поиск по доп полям
RewriteRule ^xfsearch/([^.]+)/page/([0-9]+)(/?)+$ index.php?do=xfsearch&xf=$1&cstart=$2 [L]
RewriteRule ^xfsearch/([^.]+)/?$ index.php?do=xfsearch&xf=$1 [L]
меняем на
PHP:
# поиск по доп полям
RewriteRule ^find/([^.]+)/page/([0-9]+)(/?)+$ index.php?do=xfsearch&xf=$1&cstart=$2 [L]
RewriteRule ^find/([^.]+)/?$ index.php?do=xfsearch&xf=$1 [L]
Вот и все. Вы можете использовать любое слово вместо find, для этого достаточно в заменяемом коде заменить его на свое слово.

Допёр до этого: DomiTori
 
Лучше совсем убрать тогда из адресной строки. Это же возможно?
 
Лучше совсем убрать тогда из адресной строки. Это же возможно?
до 11-й версии можно убрать его без проблем, в 11-й версии - пока не получилось его полностью убрать чтобы навигация осталась нормальной :conf:
 
Лучше совсем убрать тогда из адресной строки. Это же возможно?
Новая таблица в бд и новый способ построения чпу не дают его убрать полностью. Можно только частично. Первая страница поиска по доп полям будет без xfsearch, а вторая и последующие уже с ним. Есть хак от Геймера, но после его установки не работают категории и профиль пользователя. Пока его не доделали лучше не ставить
 
а просто редиректом не получится убрать?
 
Получится. В качестве бонусов получишь дубли. Лучше вырезать xfsearch.
так а как. выше написано что не получается вырезать для свежих версий. Хотя бы вариант для первой страницы показали...
 
Как обстоят дела с 12 версией? можно как нибудь искоренить?
 
Назад
Сверху