This extension provides Shortcodes that generate both search forms and results pages for SearchWP search engines. It’s useful if you’re not comfortable (or able) to edit theme files directly to implement your search form(s) and results loops.
After activating Shortcodes, the following will be available to you:
Shortcode | Attribute(s) |
---|---|
searchwp_search_form Outputs a search form for a specific search engine |
target — The form action (Default is the existing permalink)engine — Search engine name (Default is default )var — The search query variable name (Default is swpquery )button_text — Form button text (Default is Search )hide_button — Either “true” or “false”, hides the search form submit buttonplaceholder — Form input placeholder text (Default is Search )live_search — Either “true” or “false”, force enable/disable Live Ajax Search for this form, ignoring the value of the global “Enable Live Search” setting |
searchwp_search_results Outputs the list of search results once a search has been submitted |
engine — Search engine name (Default is default )var — The search query variable name (Default is swpquery )posts_per_page — How many posts per page to displayNote that this is not a self-closing Shortcode, the markup for each search result should be nested inside, see the sample below for example |
searchwp_search_result_link Outputs a link to the current search result with the text of the result’s title |
direct — Either “true” or “false”, when true link directly to the permalink, if it’s an attachment link directly to it’s URL, not the parent page |
searchwp_search_result_excerpt Outputs the excerpt for the current search result |
None |
searchwp_search_results_none Output if no search results were found |
None
Note that this is not a self-closing Shortcode, the markup for each search result should be nested inside, see sample below for example |
searchwp_search_results_pagination Outputs pagination of search results |
engine — Search engine name (Default is default )direction — Either “prev” or “next”link_text — The text to use in the linkvar — The search query variable name (Default is swpquery ) |
searchwp_search_results_paginate_links Outputs paginated links for search results |
engine — Search engine name (Default is default )var — The search query variable name (Default is swpquery )In addition to the above, arguments from paginate_links are also supported. |
searchwp_search_result_image Outputs Featured Image for the current result |
size — Image size (Default is thumb ) |
searchwp_search_result_permalink Outputs permalink for the current result with the text of the result’s permalink |
direct — Whether to link directly to Media files (Default is 'true' ) |
searchwp_total_results Outputs a total number of results for the current search |
engine — Search engine name (Default is default )var — The search query variable name (Default is swpquery )text — The text to use alongside the number of results. Supports %total% and %query% placeholders for precise formatting.[searchwp_total_results text="Found %total% results for %query%"] converts to “Found 0 results for example search”. |
Here is a sample of a comprehensive implementation of Shortcodes that searches a supplemental engine with a name of my_test_engine
:
<h3>Search Form</h3> | |
[searchwp_search_form engine="my_test_engine" target="http://example.com/supplemental-search/" var="swpquery" button_text="Find Results"] | |
<div class="search-results-wrapper"> | |
[searchwp_total_results text="Found %total% results for %query%" engine="my_test_engine" var="swpquery"] | |
[searchwp_search_results engine="my_test_engine" var="swpquery" posts_per_page=10] | |
<h2>[searchwp_search_result_link direct="true"]</h2> | |
[searchwp_search_result_excerpt] | |
[/searchwp_search_results] | |
</div> | |
<div class="no-search-results-found"> | |
[searchwp_search_results_none] | |
No results found, please search again. | |
[/searchwp_search_results_none] | |
</div> | |
<div class="search-results-pagination"> | |
[searchwp_search_results_pagination direction="prev" link_text="Previous" var="swpquery" engine="my_test_engine"] | |
[searchwp_search_results_pagination direction="next" link_text="Next" var="swpquery" engine="my_test_engine"] | |
</div> |
You can customize the attributes as per the table above.
Changelog
1.8.4
- [New] Added option to hide submit button.
1.8.3
- [New] Compatibility with Live Ajax Search.
- [Improvement] The
searchwp_total_results
shortcode supports text customizations.
1.8.2
- [Fix] Prevent Error due to Shortcode recursion.
- [Update] Updated updater.
1.8.1
- [Fix]
posts_per_page
attribute not reflected when using SearchWP 4.
1.8.0
- [New] New Shortcode
searchwp_search_results_paginate_links
for paginated links. - [New] New Shortcode
searchwp_search_result_image
for result Featured Image output. - [New] New Shortcode
searchwp_search_result_permalink
for result permalink output. - [Update] Updated updater.
1.7.0
- [New] Compatibility with SearchWP 4.
1.6.1
- [Fix] Issue with handling quotes.
1.6
- [New] New Shortcode:
searchwp_total_results
to output the total number of search results. - [New] Adds
placeholder
argument tosearchwp_search_form
Shortcode. - [Update] Updated updater.
1.5.4
- [Fix] Additional checks to prevent edge case function redeclaration.
- [Update] Updated updater.
1.5.3
- [New] New filter:
searchwp_shortcodes_engine
. - [New] New filter:
searchwp_shortcodes_paginate_links
. - [New] New filter:
searchwp_shortcodes_pagination_prev
. - [New] New filter:
searchwp_shortcodes_pagination_next
. - [Update] Updated updater.
1.5.1
- [New] New Shortcode
[searchwp_search_result_excerpt_global]
. - [New] New Shortcode
[searchwp_search_result_excerpt_document]
. - [Improvement] Refined escaping so as to better pair with Term Highlight.
1.5
- [Improvement] Support for automatic updates based on your SearchWP license key.
1.2.1
- [New] Added a number of actions during output.
1.2
- [Change] Allow GET variable to be set in Shortcode attribute, among other things.
1.1
- [Fix] Fixed an issue where attributes weren't passed to the Shortcode callback.
1.0
- Initial release.