вывод результатов поиска в отдельную страницу
вывод результатов поиска в отдельную страницу
Суть: добавляем в тег {search} параметр resultpage="здесь алиас страницы", чтобы выводило результаты на указанной странице. После этого поиск прилежно отображает указанную страницу, но забывает нарисовать на ней результаты поиска, т.е. просто отображает контент страницы на момент ее создания.
Если параметр из тега выкинуть, поиск начинает нормально работать, но результаты выводит в шаблон той страницы, на которой собственно поиск инициировали, а это не приемлемо.
Кто-нить знает решение?
ЗЫ
Версия 1.9.1
Если параметр из тега выкинуть, поиск начинает нормально работать, но результаты выводит в шаблон той страницы, на которой собственно поиск инициировали, а это не приемлемо.
Кто-нить знает решение?
ЗЫ
Версия 1.9.1
I hate CMSMS. 

Re: вывод результатов поиска в отдельную страницу
Добавьте в вызов это
Code: Select all
{search}
Code: Select all
search_method="post"
Re: вывод результатов поиска в отдельную страницу
добавлял, не помогло. Да и не должно было помочь вообще-то.guro wrote:Добавьте в вызовэтоCode: Select all
{search}
Code: Select all
search_method="post"
I hate CMSMS. 

Re: вывод результатов поиска в отдельную страницу
Включен ли ЧПУ? Если включен ЧПУ, что в htaccess?
Интересует вот эта частьесть ли строка?
Интересует вот эта часть
Code: Select all
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_METHOD} !POST$
RewriteRule ^(.*) %{REQUEST_URI}/ [R=301,L]
Code: Select all
RewriteCond %{REQUEST_METHOD} !POST$
Re: вывод результатов поиска в отдельную страницу
Да при чем здесь ЧПУ и посты?
Каким боком ЧПУ может мешать поиску при выводе результатов на указанной мной странице, и при этом совершенно не мешать при выводе в текущую страницу? У ж если бы что-то тут мешало поиску, то он бы не работал совсем и везде, не так ли?
Но раз хотите, вот содержимое htaccess:
Каким боком ЧПУ может мешать поиску при выводе результатов на указанной мной странице, и при этом совершенно не мешать при выводе в текущую страницу? У ж если бы что-то тут мешало поиску, то он бы не работал совсем и везде, не так ли?
Но раз хотите, вот содержимое htaccess:
Code: Select all
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} !\.
RewriteRule ^(.*) %{REQUEST_URI}/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?page=$1 [QSA]
I hate CMSMS. 

Re: вывод результатов поиска в отдельную страницу
Если вы пришли на форум поругаться, то вам никто в таком случае помогать не будет!!!
А теперь приведите свой htaccess к видут.е. добавьте строку И вызовите
А теперь приведите свой htaccess к виду
Code: Select all
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_METHOD} !POST$
RewriteRule ^(.*) %{REQUEST_URI}/ [R=301,L]
Code: Select all
RewriteCond %{REQUEST_METHOD} !POST$
Code: Select all
{search search_method="post" resultpage="здесь алиас страницы"}
Re: вывод результатов поиска в отдельную страницу
Спасибо, заработало.
А можете мне объяснить, с какого перепугу поиск реагирует на настройки mod_rewrite? А то у меня сейчас рожа, как у кота на Вашем аватаре...
А можете мне объяснить, с какого перепугу поиск реагирует на настройки mod_rewrite? А то у меня сейчас рожа, как у кота на Вашем аватаре...
I hate CMSMS. 

Re: вывод результатов поиска в отдельную страницу
Дело в том, что без строчкиhtaccess при редиректе, с url без конечного слеша на url с конечным слешем, убивает все переменные переданные через POST. Соответственно и страница получается без результата поиска.
А вот почему не работает через GET - это действительно интересно. Причем не только на 1.9, но и на 1.10. Возможно стоит написать в Forge.
Так что вопрос остается открытым. Может кто-то фиксил эту проблему?
Code: Select all
RewriteCond %{REQUEST_METHOD} !POST$
А вот почему не работает через GET - это действительно интересно. Причем не только на 1.9, но и на 1.10. Возможно стоит написать в Forge.
Так что вопрос остается открытым. Может кто-то фиксил эту проблему?
Re: вывод результатов поиска в отдельную страницу
Кстасти, вот что написано в описании модуляВидимо из-за этого с ЧПУ и не работает GET
Code: Select all
(optional) search_method="get" - Совместимость с Pretty Urls c помощью метода POST, по умолчанию параметры передаются в GET, чтобы изменить используйте {search search_method="post"}
Re: вывод результатов поиска в отдельную страницу
т.е. решение проблемы - допилить модуль, чтобы в генерируемый форме в action приписывался адрес с слешем на конце. Ау, разработчики!guro wrote:Дело в том, что без строчкиhtaccess при редиректе, с url без конечного слеша на url с конечным слешем, убивает все переменные переданные через POST. Соответственно и страница получается без результата поиска.Code: Select all
RewriteCond %{REQUEST_METHOD} !POST$
в версиях 1.6.ххх точно работало без допиливаний и по GET и по POST.guro wrote:А вот почему не работает через GET - это действительно интересно. Причем не только на 1.9, но и на 1.10.
Еще раз спасибо за решение. Просто я всегда стараюсь руководствоваться логикой, но в случае CMSMS такое подход неприемлем. Уж не первый раз убеждаюсь.

I hate CMSMS. 

Re: вывод результатов поиска в отдельную страницу
При включенном ЧПУ вполне логично грешить на htaccess. Ведь именно mod_rewrite первым обрабатывает все запросы к серверу и преобразует их к другому виду.m00nk wrote:Просто я всегда стараюсь руководствоваться логикой, но в случае CMSMS такое подход неприемлем
Re: вывод результатов поиска в отдельную страницу
первая попытка была именно с передачей через GET, поэтому позже я уже был уверен, что косяк внутри модуля, а внешние факторы ни при чем...
I hate CMSMS. 
