Implement latest Nice Search
This commit is contained in:
@@ -476,29 +476,20 @@ add_filter('dynamic_sidebar_params', 'roots_widget_first_last_classes');
|
||||
* @link http://txfx.net/wordpress-plugins/nice-search/
|
||||
*/
|
||||
function roots_nice_search_redirect() {
|
||||
if (is_search() && strpos($_SERVER['REQUEST_URI'], '/wp-admin/') === false && strpos($_SERVER['REQUEST_URI'], '/search/') === false) {
|
||||
wp_redirect(home_url('/search/' . str_replace(array(' ', '%20'), array('+', '+'), urlencode(get_query_var('s')))), 301);
|
||||
global $wp_rewrite;
|
||||
if (!isset($wp_rewrite) || !is_object($wp_rewrite) || !$wp_rewrite->using_permalinks()) {
|
||||
return;
|
||||
}
|
||||
|
||||
$search_base = $wp_rewrite->search_base;
|
||||
if (is_search() && !is_admin() && strpos($_SERVER['REQUEST_URI'], "/{$search_base}/") === false) {
|
||||
wp_redirect(home_url("/{$search_base}/" . urlencode(get_query_var('s'))));
|
||||
exit();
|
||||
}
|
||||
}
|
||||
|
||||
add_action('template_redirect', 'roots_nice_search_redirect');
|
||||
|
||||
/**
|
||||
* Fix for get_search_query() returning +'s between search terms
|
||||
*/
|
||||
function roots_search_query($escaped = true) {
|
||||
$query = apply_filters('roots_search_query', get_query_var('s'));
|
||||
|
||||
if ($escaped) {
|
||||
$query = esc_attr($query);
|
||||
}
|
||||
|
||||
return urldecode($query);
|
||||
}
|
||||
|
||||
add_filter('get_search_query', 'roots_search_query');
|
||||
|
||||
/**
|
||||
* Fix for empty search queries redirecting to home page
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user