Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Хаки Дополнительные поля по категориям, хак?

Дополнительные поля по категориям, хак?


     16.12.2014    Хаки    3930

вопрос
Есть вот такой хак:

Ищем в файлах engine/modules/show.short.php, engine/modules/show.custom.php и два раза engine/modules/show.full.php

$value3[] = "<a href=\"" . $config['http_home_url'] . "xfsearch/" . urlencode( $value2 ) . "/\">" . $value2 . "</a>";

Заменяем на:
$value3[] = "<a href=\"" . $config['http_home_url'] . "".$preg_safe_name."/" . urlencode( $value2 ) . "/\">" . $value2 . "</a>";


В файле .htaccess ищем

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


Вставляем ниже 

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


И получаем красивые дополнительные поля, не вида http://site.ru/xfsearch/1999
а в ввиде http://site.ru/year/1999

Но вот есть одно но, если тегов много появляеться пагинация и к ссылке всеравно добавляеться xfsearch и ссылка становиться такого вида: http://site.ru/xfsearch/year/page/2/

Вопрос такое что нужно изменить в файле engine.php чтобы не добавлялост слово xfsearch

Ответил: Sander


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

Заменить на
$url_page = $config['http_home_url'] . urlencode($_GET['xn']) . "/" . urlencode ( str_replace("'", "'", $xf) );



И в .htaccess писать так
RewriteRule ^(genre)/([^/]*)(/?)+$ index.php?do=xfsearch&xn=$1&xf=$2 [L]
RewriteRule ^(genre)/([^/]*)/page/([0-9]+)(/?)+$ index.php?do=xfsearch&xn=$1&xf=$2&cstart=$3 [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]

Комментарии пользователей (8)

aluminoter
27

aluminoter - 16 декабря 2014 17:44 - Юзер

***Комментарий удален***

Sander
1126

1637 | 1204

Sander - 16 декабря 2014 18:40 - Эксперт

***Комментарий удален***

SanDev.pro - мой блог.

ICQ: 404-037-556
Skype: Sander8804

aluminoter
27

aluminoter - 16 декабря 2014 19:05 - Юзер

Спасибо!!! Все теперь супер работает.

babayka2100
1

babayka2100 - 27 августа 2015 00:38 - Юзер

Работает спору нет, но отвалились [category=3][/category] не подскажите как с этим бороться?

Thodi
25 | 16

Thodi - 20 сентября 2015 01:56 - Юзер

А как быть в 10.5 версии ?

Uralbox
49 | 6

Uralbox - 7 декабря 2015 11:50 - Юзер

А на 10.6 будет работать?

kogtehvost
2

kogtehvost - 25 февраля 2016 17:20 - Юзер

Прекрасный хак, спасибо! У меня только одна проблема возникла.
Актеры у меня заносятся каждый в отдельное доп.поле, то есть не просто "actors" с перечислением актеров, а отдельные поля "actor_1", "actor_2", "actor_3" и т.д. (мне это нужно для красоты, я к ним картинки цепляю)
Естественно, при клике на эти поля в адресе тоже используется название поля с цифрой, и поиск, как я понял происходит только по такому же полю.
Так вот, можно ли сделать так, чтобы при клике например на актера из поля "actor_1" нас переадресовывало на поиск по всем актерам, то есть просто "actor"?

sas7110
9

sas7110 - 26 апреля 2016 00:08 - Юзер

Отлично все. Ребят, но ссылка получается какашечная http://site.ru/genre/боевик/page/2/ - половина на английском, половина на русском, разве это нормально?
Как сделать чтобы полноценная замена была на латинице? http://site.ru/genre/boevik/page/2/ - возможно такое с xfsearch сотворить?

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

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

 23.12.2012 sosok167  Хаки