SimpleSearchForm
Последнее обновление not available | История страницы | Улучшить эту страницу | Сообщить о проблеме
Support the team building MODX with a monthly donation.
The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.
Backers
Budget
$204 per month—let's make that $500!
Learn moreСниппет SimpleSearchForm¶
Этот сниппет выводит форму поиска для SimpleSearch.
Использование¶
Разместите его там, где нужна форма поиска, и добавьте свойство 'landing' в вызов, чтобы указать ресурс, на котором вызывается сниппет SimpleSearch (там будут показаны результаты).
[[!SimpleSearchForm? &landing=`123`]]
Если результаты должны быть на той же странице, разместите вызов SimpleSearch под SimpleSearchForm и не указывайте параметр 'landing'.
Доступные свойства¶
| Name | Description | Default |
|---|---|---|
| tpl | Чанк для вывода формы поиска. | SearchForm |
| landing | Ресурс, на котором вызывается сниппет SimpleSearch и показываются результаты. | |
| searchIndex | Имя параметра REQUEST для поиска. | search |
| method | Отправлять поиск через POST или GET. | GET |
| toPlaceholder | Выводить результат напрямую или записать в плейсхолдер с именем этого свойства. |
Чанки SimpleSearchForm¶
SimpleSearchForm обрабатывает 1 чанк. Соответствующий параметр SimpleSearchForm:
- tpl: чанк для формы поиска.
Примеры¶
Выведите форму поиска с отправкой через POST вместо GET:
[[SimpleSearchForm? &method=`POST`]]
Запишите форму в плейсхолдер 'search.form', укажите landing на ресурсе 123 и используйте пользовательский чанк 'MySearchForm':
[[SimpleSearchForm? &tpl=`MySearchForm` &landing=`123` &toPlaceholder=`search.form`]]
<h2>Search</h2>
[[+search.form]]
В текущей версии (1.0.0) есть баг: если у вас есть чанк с именем «seachForm», его содержимое игнорируется в пользу формы по умолчанию.
Ошибки¶
Если после отправки поиска вы видите ошибку:
There were no search results for the search "". Please try using more general terms to get more results.
Скорее всего SimpleSearch ищет поисковый термин не в том месте массива $_POST или $_GET. Если вы создали пользовательский &tpl для SimpleSearchForm, убедитесь, что имя поля поиска совпадает с &searchIndex в вызове SimpleSearch. Ниже my_custom_search_field используется и в tpl SimpleSearchForm, и в параметре &searchIndex вызова SimpleSearch:
SimpleSearchForm tpl¶
<form id="my_id" action="[[~[[+landing:default=`[[*id]]`]]]]" method="[[+method:default=`get`]]">
<input id="searchField" class="my_class" type="text" name="my_custom_search_field" value="[[+searchValue:default=`Search the site`]]"/>
<input id="searchIcon" class="utilityButton" type="image" alt="Search" src="/assets/templates/my/images/searchButton.png">
<input type="hidden" name="id" value="[[+landing:default=[[*id]]]]" />
</form>
Вызов сниппета SimpleSearch¶
[[!SimpleSearch? &searchIndex=`my_custom_search_field`]]
Смотрите также¶
Support the team building MODX with a monthly donation.
The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.
Backers
Budget
$204 per month—let's make that $500!
Learn more










