поисковый запрос и отображаемая страница

smart
Posts: 1356
Joined: Sun Oct 09, 2011 4:54 pm

поисковый запрос и отображаемая страница

Post by smart »

Здравствуйте.

Подскажите, как правильно сделать, чтобы при поисковом запросе выдавался один темплейт, а при заходе на страницу поиска другой ?
Пример:
domain.com/search/?search=word - получаем один темплейт
domain.com/search/ - получаем другой темплейт
richmantrade
Posts: 1036
Joined: Tue Dec 04, 2012 8:46 am

Re: поисковый запрос и отображаемая страница

Post by richmantrade »

htaccess_ом понятное дело.

Code: Select all

RewriteCond %{QUERY_STRING} ^(.+)$
RewriteRule ^search/$ /index.php?%{QUERY_STRING}
RewriteRule ^search/$ /index.php?force_template=other_template
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: поисковый запрос и отображаемая страница

Post by admin »

Спасибо, хороший вариант.
Don't forget to run script update
smart
Posts: 1356
Joined: Sun Oct 09, 2011 4:54 pm

Re: поисковый запрос и отображаемая страница

Post by smart »

richmantrade wrote:htaccess_ом понятное дело.

Code: Select all

RewriteCond %{QUERY_STRING} ^(.+)$
RewriteRule ^search/$ /index.php?%{QUERY_STRING}
RewriteRule ^search/$ /index.php?force_template=other_template
Каким образом при данном запросе, выдавать 404 страницу, когда ниего не найдено и при этом получать от сервера ответ 404 ?

Пока получается только генерировать все что угодно и с любым набором символов любой длинны
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: поисковый запрос и отображаемая страница

Post by admin »

В конце правила [R=404]
Для примеров можно загуглить "mod_rewrite return 404" - выдает кучку примеров что б можно было на что-то ориентриоваться.
Don't forget to run script update
smart
Posts: 1356
Joined: Sun Oct 09, 2011 4:54 pm

Re: поисковый запрос и отображаемая страница

Post by smart »

admin wrote:В конце правила [R=404]
Для примеров можно загуглить "mod_rewrite return 404" - выдает кучку примеров что б можно было на что-то ориентриоваться.
Видимо не совсем точно я описал задачу. Необходимо при запросе:

Code: Select all

/search?search=sdfgslfsglnxdjhgld
выдать 404, так как такого запроса реально не существует, но при нормальных запросах, которые есть в базе, выдавать нормальные страницы и ответ.
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: поисковый запрос и отображаемая страница

Post by admin »

Don't forget to run script update
smart
Posts: 1356
Joined: Sun Oct 09, 2011 4:54 pm

Re: поисковый запрос и отображаемая страница

Post by smart »

да, но в случае с поиском не работает как надо, либо как то иначе нужно делать, чтобы выдавало правильно
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: поисковый запрос и отображаемая страница

Post by admin »

Да, сорри, для поиска это спецаильно убирали дабы не было нелогичного поведения - вписал запрос по которому ничего нет и почему-то получаешь 404. Такого поведения ни на одном из сайтов нет и это специально исправляли. В начале действительно был ваш вариант.

Но если вы хотите ваш вариант, то всегда можно добавить в темпелйто content_search

if (<!--TOTAL_ITEMS--> == 0) {
header("HTTP/1.1 404 Not Found");

и вывести текст для 404

}
Don't forget to run script update
smart
Posts: 1356
Joined: Sun Oct 09, 2011 4:54 pm

Re: поисковый запрос и отображаемая страница

Post by smart »

admin wrote:Да, сорри, для поиска это спецаильно убирали дабы не было нелогичного поведения - вписал запрос по которому ничего нет и почему-то получаешь 404. Такого поведения ни на одном из сайтов нет и это специально исправляли. В начале действительно был ваш вариант.

Но если вы хотите ваш вариант, то всегда можно добавить в темпелйто content_search

if (<!--TOTAL_ITEMS--> == 0) {
header("HTTP/1.1 404 Not Found");

и вывести текст для 404

}
опять не понятно, куда добавлять код ?
Добавил в тело темплейта, но вообще все перестало работать
Post Reply