Настройка макета страницы результатов поиска Joomla - PullRequest
0 голосов
/ 03 марта 2010

Результаты поиска joomla появляются на главной странице. Я хочу, чтобы это появилось на новой странице. Согласно некоторым сообщениям в Интернете, мне пришлось изменить mod_search.php, чтобы установить для идентификатора элемента несуществующий элемент, поэтому я установил его на 0, но проблема в том, что изменения вообще не отражаются в моем поисковом модуле. Я также попытался поместить скрытое поле с именем itemid в форму modules / mod_search / tmpl / default / default.php, но даже если оно не выбрано, я установил цель формы равной _blank и попытался изменить страницу действия формы, чтобы она говорила index.php? Itemid = 0 вместо index.php, но все это, похоже, не отражается на модуле поиска. Когда я вручную изменяю itemid в окне местоположения браузера на 0, результаты отображаются на другой странице (вот что я хочу).

Подскажите, пожалуйста, что мне делать?

Ответы [ 3 ]

2 голосов
/ 16 ноября 2012

В Joomla 2.5 есть поле "itemId" в свойствах mod_search, если оно установлено на какой-то несуществующий элемент, чем оно очищает страницу результатов поиска от модулей, которые привязываются к некоторым точным пунктам меню (страницам), и оставляют только модули, которые являются обязательными на все страницы.

2 голосов
/ 03 марта 2010

Попробуйте изменить способ запроса формы поиска:

<form ... method="get">
<input type="hidden" name="itemId" value="0" />

или как это

<form action="...?itemId=0" method="post">
1 голос
/ 07 сентября 2011

Я знаю, что это старый пост, но я нашел для этого простое решение для использования с Joomla 1.6 и хотел поделиться им.Это основной хак, который не является оптимальным, потому что он исчезнет во время обновлений, но это легко сделать.

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

При использовании поля поиска в Joomla!страница, чтобы начать поиск, это «компонентная» часть, а не «модуль» - поиска, который используется.В контроллере компонентов поиска есть раздел, в котором либо задается идентификатор для использования с меню, либо автоматически задается результат, который должен поступить и отображаться на запрашивающей странице.Нам просто нужно отключить это, чтобы отправить результаты поиска на пустую страницу.

Итак, в /components/com_search/controller.php - закомментируйте следующий код:

/*              // set Itemid id for links from menu
    $app    = JFactory::getApplication();
    $menu   = $app->getMenu();
    $items  = $menu->getItems('link', 'index.php?option=com_search&view=search');

    if(isset($items[0])) {
        $post['Itemid'] = $items[0]->id;
    } else if (JRequest::getInt('Itemid') > 0) { //use Itemid from requesting page only if there is no existing menu
        $post['Itemid'] = JRequest::getInt('Itemid');
    }
*/

Это отобразит результаты поиска в содержательной части пустой страницы вашего шаблона.По крайней мере, для меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...