Version Description
- Searches in WooCommerce products variation.
- Fixed - Firefox browser dropdown select issue
- Optimized plugin admin options.
Download this release
Release Info
Developer | vinod dalvi |
Plugin | Ivory Search – WordPress Search Plugin |
Version | 4.1.4 |
Comparing to | |
See all releases |
Code changes from version 4.1.3 to 4.1.4
- add-search-to-menu.php +20 -6
- admin/class-is-admin.php +73 -17
- admin/class-is-editor.php +54 -26
- admin/class-is-settings-fields.php +227 -215
- admin/css/ivory-search-admin.css +31 -19
- admin/js/ivory-search-admin.js +30 -63
- admin/partials/{new-search-form.php → search-form.php} +6 -4
- admin/partials/settings-form.php +17 -10
- includes/class-is-admin-public.php +1 -3
- includes/class-is-deactivator.php +2 -4
- includes/class-is-search-form.php +0 -16
- includes/class-is.php +3 -3
- languages/default.po +289 -285
- public/class-is-public.php +3 -3
- readme.txt +8 -3
add-search-to-menu.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Plugin Name: Ivory Search
|
4 |
* Plugin URI: https://ivorysearch.com
|
5 |
* Description: The WordPress Search plugin to power your WordPress site custom search. Helping you build a better search. Includes WooCommerce Search support!
|
6 |
-
* Version: 4.1.
|
7 |
* Author: Ivory Search
|
8 |
* Author URI: https://ivorysearch.com/
|
9 |
* License: GPL2+
|
@@ -13,7 +13,7 @@
|
|
13 |
*
|
14 |
* @fs_premium_only /includes/class-is-stemmer.php
|
15 |
*
|
16 |
-
* WC tested up to: 3.
|
17 |
*
|
18 |
* Ivory Search is free software: you can redistribute it and/or modify
|
19 |
* it under the terms of the GNU General Public License as published by
|
@@ -62,9 +62,8 @@ final class Ivory_Search {
|
|
62 |
* Ivory Search Constructor.
|
63 |
*/
|
64 |
public function __construct() {
|
65 |
-
$
|
66 |
-
|
67 |
-
$this->opt = array_merge( $old_opt, $new_opt );
|
68 |
$this->define_constants();
|
69 |
$this->includes();
|
70 |
$this->init_hooks();
|
@@ -84,11 +83,26 @@ final class Ivory_Search {
|
|
84 |
return self::$_instance;
|
85 |
}
|
86 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
87 |
/**
|
88 |
* Defines Ivory Search Constants.
|
89 |
*/
|
90 |
private function define_constants() {
|
91 |
-
define( 'IS_VERSION', '4.
|
92 |
define( 'IS_PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
|
93 |
define( 'IS_PLUGIN_FILE', __FILE__ );
|
94 |
|
3 |
* Plugin Name: Ivory Search
|
4 |
* Plugin URI: https://ivorysearch.com
|
5 |
* Description: The WordPress Search plugin to power your WordPress site custom search. Helping you build a better search. Includes WooCommerce Search support!
|
6 |
+
* Version: 4.1.4
|
7 |
* Author: Ivory Search
|
8 |
* Author URI: https://ivorysearch.com/
|
9 |
* License: GPL2+
|
13 |
*
|
14 |
* @fs_premium_only /includes/class-is-stemmer.php
|
15 |
*
|
16 |
+
* WC tested up to: 3.5
|
17 |
*
|
18 |
* Ivory Search is free software: you can redistribute it and/or modify
|
19 |
* it under the terms of the GNU General Public License as published by
|
62 |
* Ivory Search Constructor.
|
63 |
*/
|
64 |
public function __construct() {
|
65 |
+
$this->opt = self::load_options();
|
66 |
+
|
|
|
67 |
$this->define_constants();
|
68 |
$this->includes();
|
69 |
$this->init_hooks();
|
83 |
return self::$_instance;
|
84 |
}
|
85 |
|
86 |
+
/**
|
87 |
+
* Loads plugin options.
|
88 |
+
*
|
89 |
+
*/
|
90 |
+
public static function load_options() {
|
91 |
+
$old_opt = get_option( 'add_search_to_menu', array() );
|
92 |
+
$new_opt = (array)get_option( 'ivory_search', array() );
|
93 |
+
$temp = array_merge( $old_opt, $new_opt );
|
94 |
+
$is_menu_search = get_option( 'is_menu_search', array() );
|
95 |
+
$temp2 = array_merge( $temp, (array)$is_menu_search );
|
96 |
+
$is_settings = get_option( 'is_settings', array() );
|
97 |
+
|
98 |
+
return array_merge( $temp2, (array)$is_settings );
|
99 |
+
}
|
100 |
+
|
101 |
/**
|
102 |
* Defines Ivory Search Constants.
|
103 |
*/
|
104 |
private function define_constants() {
|
105 |
+
define( 'IS_VERSION', '4.1.4' );
|
106 |
define( 'IS_PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
|
107 |
define( 'IS_PLUGIN_FILE', __FILE__ );
|
108 |
|
admin/class-is-admin.php
CHANGED
@@ -32,9 +32,7 @@ class IS_Admin
|
|
32 |
if ( null !== $is ) {
|
33 |
$this->opt = $is->opt;
|
34 |
} else {
|
35 |
-
$
|
36 |
-
$new_opt = (array) get_option( 'ivory_search' );
|
37 |
-
$this->opt = array_merge( $old_opt, $new_opt );
|
38 |
}
|
39 |
|
40 |
$this->networkactive = is_multisite() && array_key_exists( plugin_basename( IS_PLUGIN_FILE ), (array) get_site_option( 'active_sitewide_plugins' ) );
|
@@ -76,7 +74,7 @@ class IS_Admin
|
|
76 |
);
|
77 |
$args = array(
|
78 |
'saveAlert' => __( "The changes you made will be lost if you navigate away from this page.", 'ivory-search' ),
|
79 |
-
'
|
80 |
);
|
81 |
wp_localize_script( 'is-admin-scripts', 'ivory_search', $args );
|
82 |
wp_enqueue_script( 'is-admin-scripts' );
|
@@ -132,7 +130,53 @@ class IS_Admin
|
|
132 |
|
133 |
if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) {
|
134 |
$this->opt['dismiss_admin_notices'] = 1;
|
135 |
-
update_option( '
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
136 |
}
|
137 |
|
138 |
die;
|
@@ -174,8 +218,12 @@ class IS_Admin
|
|
174 |
*/
|
175 |
function admin_init()
|
176 |
{
|
177 |
-
|
178 |
-
$
|
|
|
|
|
|
|
|
|
179 |
/* Creates default search form */
|
180 |
$search_form = get_page_by_title( 'Default Search Form', OBJECT, IS_Search_Form::post_type );
|
181 |
|
@@ -327,7 +375,7 @@ class IS_Admin
|
|
327 |
|
328 |
if ( $post = IS_Search_Form::get_current() ) {
|
329 |
$post_id = ( $post->initial() ? -1 : $post->id() );
|
330 |
-
include_once 'partials/
|
331 |
return;
|
332 |
}
|
333 |
|
@@ -383,7 +431,7 @@ class IS_Admin
|
|
383 |
$post = IS_Search_Form::get_template();
|
384 |
}
|
385 |
$post_id = -1;
|
386 |
-
include_once 'partials/
|
387 |
}
|
388 |
|
389 |
/**
|
@@ -415,6 +463,7 @@ class IS_Admin
|
|
415 |
$args['_is_includes'] = ( isset( $_POST['_is_includes'] ) ? $_POST['_is_includes'] : '' );
|
416 |
$args['_is_excludes'] = ( isset( $_POST['_is_excludes'] ) ? $_POST['_is_excludes'] : '' );
|
417 |
$args['_is_settings'] = ( isset( $_POST['_is_settings'] ) ? $_POST['_is_settings'] : '' );
|
|
|
418 |
$invalid = false;
|
419 |
if ( !empty($args['_is_includes']) && !empty($args['_is_excludes']) ) {
|
420 |
foreach ( $args['_is_includes'] as $key => $value ) {
|
@@ -451,16 +500,16 @@ class IS_Admin
|
|
451 |
|
452 |
if ( $invalid ) {
|
453 |
$query = array(
|
454 |
-
'post'
|
455 |
-
'
|
456 |
);
|
457 |
$query['message'] = 'invalid';
|
458 |
$query['data'] = $invalid;
|
459 |
} else {
|
460 |
$search_form = $this->save_form( $args );
|
461 |
$query = array(
|
462 |
-
'post'
|
463 |
-
'
|
464 |
);
|
465 |
|
466 |
if ( !$search_form ) {
|
@@ -496,7 +545,7 @@ class IS_Admin
|
|
496 |
$args['_is_settings'] = '';
|
497 |
$search_form = $this->save_form( $args );
|
498 |
$query['post'] = $id;
|
499 |
-
$query['
|
500 |
$query['message'] = 'reset';
|
501 |
}
|
502 |
|
@@ -604,6 +653,7 @@ class IS_Admin
|
|
604 |
'_is_includes' => null,
|
605 |
'_is_excludes' => null,
|
606 |
'_is_settings' => null,
|
|
|
607 |
) );
|
608 |
$args['id'] = (int) $args['id'];
|
609 |
$search_form = '';
|
@@ -624,9 +674,15 @@ class IS_Admin
|
|
624 |
$search_form->set_locale( $args['_is_locale'] );
|
625 |
}
|
626 |
$properties = $search_form->get_properties();
|
627 |
-
$
|
628 |
-
|
629 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
630 |
$search_form->set_properties( $properties );
|
631 |
do_action(
|
632 |
'is_before_save_form',
|
32 |
if ( null !== $is ) {
|
33 |
$this->opt = $is->opt;
|
34 |
} else {
|
35 |
+
$this->opt = Ivory_Search::load_options();
|
|
|
|
|
36 |
}
|
37 |
|
38 |
$this->networkactive = is_multisite() && array_key_exists( plugin_basename( IS_PLUGIN_FILE ), (array) get_site_option( 'active_sitewide_plugins' ) );
|
74 |
);
|
75 |
$args = array(
|
76 |
'saveAlert' => __( "The changes you made will be lost if you navigate away from this page.", 'ivory-search' ),
|
77 |
+
'ajaxUrl' => admin_url( 'admin-ajax.php' ),
|
78 |
);
|
79 |
wp_localize_script( 'is-admin-scripts', 'ivory_search', $args );
|
80 |
wp_enqueue_script( 'is-admin-scripts' );
|
130 |
|
131 |
if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) {
|
132 |
$this->opt['dismiss_admin_notices'] = 1;
|
133 |
+
update_option( 'is_settings', $this->opt );
|
134 |
+
}
|
135 |
+
|
136 |
+
die;
|
137 |
+
}
|
138 |
+
|
139 |
+
/**
|
140 |
+
* Displays posts in the list using AJAX.
|
141 |
+
*/
|
142 |
+
function display_posts()
|
143 |
+
{
|
144 |
+
$posts = get_posts( array(
|
145 |
+
'post_type' => $_REQUEST['post_type'],
|
146 |
+
'posts_per_page' => -1,
|
147 |
+
'orderby' => 'title',
|
148 |
+
'order' => 'ASC',
|
149 |
+
) );
|
150 |
+
|
151 |
+
if ( !empty($posts) ) {
|
152 |
+
$temp = '';
|
153 |
+
$meta = get_post_meta( $_REQUEST['post_id'] );
|
154 |
+
|
155 |
+
if ( 'includes' === $_REQUEST['inc_exc'] && isset( $meta['_is_includes'] ) ) {
|
156 |
+
$meta = maybe_unserialize( $meta['_is_includes'][0] );
|
157 |
+
} else {
|
158 |
+
if ( 'excludes' === $_REQUEST['inc_exc'] && isset( $meta['_is_excludes'] ) ) {
|
159 |
+
$meta = maybe_unserialize( $meta['_is_excludes'][0] );
|
160 |
+
}
|
161 |
+
}
|
162 |
+
|
163 |
+
foreach ( $posts as $post2 ) {
|
164 |
+
$checked = '';
|
165 |
+
|
166 |
+
if ( 'includes' === $_REQUEST['inc_exc'] ) {
|
167 |
+
$checked = ( isset( $meta['post__in'] ) && in_array( $post2->ID, $meta['post__in'] ) ? $post2->ID : 0 );
|
168 |
+
} else {
|
169 |
+
if ( 'excludes' === $_REQUEST['inc_exc'] ) {
|
170 |
+
$checked = ( isset( $meta['post__not_in'] ) && in_array( $post2->ID, $meta['post__not_in'] ) ? $post2->ID : 0 );
|
171 |
+
}
|
172 |
+
}
|
173 |
+
|
174 |
+
$post_title = ( isset( $post2->post_title ) && '' !== $post2->post_title ? esc_html( $post2->post_title ) : $post2->post_name );
|
175 |
+
$temp .= '<option value="' . esc_attr( $post2->ID ) . '" ' . selected( $post2->ID, $checked, false ) . '>' . $post_title . '</option>';
|
176 |
+
}
|
177 |
+
echo $temp ;
|
178 |
+
} else {
|
179 |
+
_e( 'No posts found', 'ivory-search' );
|
180 |
}
|
181 |
|
182 |
die;
|
218 |
*/
|
219 |
function admin_init()
|
220 |
{
|
221 |
+
|
222 |
+
if ( !empty($GLOBALS['pagenow']) && ('admin.php' === $GLOBALS['pagenow'] || 'options.php' === $GLOBALS['pagenow']) ) {
|
223 |
+
$settings_fields = new IS_Settings_Fields( $this->opt );
|
224 |
+
$settings_fields->register_settings_fields();
|
225 |
+
}
|
226 |
+
|
227 |
/* Creates default search form */
|
228 |
$search_form = get_page_by_title( 'Default Search Form', OBJECT, IS_Search_Form::post_type );
|
229 |
|
375 |
|
376 |
if ( $post = IS_Search_Form::get_current() ) {
|
377 |
$post_id = ( $post->initial() ? -1 : $post->id() );
|
378 |
+
include_once 'partials/search-form.php';
|
379 |
return;
|
380 |
}
|
381 |
|
431 |
$post = IS_Search_Form::get_template();
|
432 |
}
|
433 |
$post_id = -1;
|
434 |
+
include_once 'partials/search-form.php';
|
435 |
}
|
436 |
|
437 |
/**
|
463 |
$args['_is_includes'] = ( isset( $_POST['_is_includes'] ) ? $_POST['_is_includes'] : '' );
|
464 |
$args['_is_excludes'] = ( isset( $_POST['_is_excludes'] ) ? $_POST['_is_excludes'] : '' );
|
465 |
$args['_is_settings'] = ( isset( $_POST['_is_settings'] ) ? $_POST['_is_settings'] : '' );
|
466 |
+
$args['tab'] = ( isset( $_POST['tab'] ) ? $_POST['tab'] : 'includes' );
|
467 |
$invalid = false;
|
468 |
if ( !empty($args['_is_includes']) && !empty($args['_is_excludes']) ) {
|
469 |
foreach ( $args['_is_includes'] as $key => $value ) {
|
500 |
|
501 |
if ( $invalid ) {
|
502 |
$query = array(
|
503 |
+
'post' => $id,
|
504 |
+
'tab' => ( isset( $_POST['tab'] ) ? $_POST['tab'] : 'includes' ),
|
505 |
);
|
506 |
$query['message'] = 'invalid';
|
507 |
$query['data'] = $invalid;
|
508 |
} else {
|
509 |
$search_form = $this->save_form( $args );
|
510 |
$query = array(
|
511 |
+
'post' => ( $search_form ? $search_form->id() : 0 ),
|
512 |
+
'tab' => ( isset( $_POST['tab'] ) ? $_POST['tab'] : 'includes' ),
|
513 |
);
|
514 |
|
515 |
if ( !$search_form ) {
|
545 |
$args['_is_settings'] = '';
|
546 |
$search_form = $this->save_form( $args );
|
547 |
$query['post'] = $id;
|
548 |
+
$query['tab'] = ( isset( $_POST['tab'] ) ? $_POST['tab'] : 'includes' );
|
549 |
$query['message'] = 'reset';
|
550 |
}
|
551 |
|
653 |
'_is_includes' => null,
|
654 |
'_is_excludes' => null,
|
655 |
'_is_settings' => null,
|
656 |
+
'tab' => null,
|
657 |
) );
|
658 |
$args['id'] = (int) $args['id'];
|
659 |
$search_form = '';
|
674 |
$search_form->set_locale( $args['_is_locale'] );
|
675 |
}
|
676 |
$properties = $search_form->get_properties();
|
677 |
+
if ( null === $args['tab'] || 'includes' === $args['tab'] ) {
|
678 |
+
$properties['_is_includes'] = $this->sanitize_includes( $args['_is_includes'] );
|
679 |
+
}
|
680 |
+
if ( null === $args['tab'] || 'excludes' === $args['tab'] ) {
|
681 |
+
$properties['_is_excludes'] = $this->sanitize_excludes( $args['_is_excludes'] );
|
682 |
+
}
|
683 |
+
if ( null === $args['tab'] || 'options' === $args['tab'] ) {
|
684 |
+
$properties['_is_settings'] = $this->sanitize_settings( $args['_is_settings'] );
|
685 |
+
}
|
686 |
$search_form->set_properties( $properties );
|
687 |
do_action(
|
688 |
'is_before_save_form',
|
admin/class-is-editor.php
CHANGED
@@ -31,17 +31,27 @@ class IS_Search_Editor
|
|
31 |
return;
|
32 |
}
|
33 |
echo '<ul id="search-form-editor-tabs">' ;
|
34 |
-
|
35 |
-
|
|
|
36 |
}
|
37 |
-
|
38 |
foreach ( $this->panels as $id => $panel ) {
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
|
|
|
|
|
|
44 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
45 |
}
|
46 |
|
47 |
public function notice( $id, $panel )
|
@@ -78,8 +88,8 @@ class IS_Search_Editor
|
|
78 |
{
|
79 |
$id = '_is_includes';
|
80 |
$includes = $post->prop( $id );
|
81 |
-
$settings = $post->prop( '_is_settings' );
|
82 |
$excludes = $post->prop( '_is_excludes' );
|
|
|
83 |
?>
|
84 |
<h4 class="panel-desc">
|
85 |
<?php
|
@@ -200,14 +210,14 @@ class IS_Search_Editor
|
|
200 |
foreach ( $post_types as $post_type ) {
|
201 |
$posts = get_posts( array(
|
202 |
'post_type' => $post_type,
|
203 |
-
'posts_per_page' =>
|
204 |
'orderby' => 'title',
|
205 |
'order' => 'ASC',
|
206 |
) );
|
207 |
|
208 |
if ( !empty($posts) ) {
|
209 |
$html = '<div class="col-wrapper"><div class="col-title">';
|
210 |
-
$col_title = ucwords( $post_type );
|
211 |
$temp = '';
|
212 |
$selected_pt = array();
|
213 |
foreach ( $posts as $post2 ) {
|
@@ -223,7 +233,11 @@ class IS_Search_Editor
|
|
223 |
}
|
224 |
$html .= $col_title . '<input class="list-search" placeholder="' . __( "Search..", 'ivory-search' ) . '" type="text"></div>';
|
225 |
$html .= '<select class="_is_includes-post__in" name="' . $id . '[post__in][]" multiple size="8" >';
|
226 |
-
$html .= $temp . '</select
|
|
|
|
|
|
|
|
|
227 |
echo $html ;
|
228 |
if ( !empty($selected_pt) ) {
|
229 |
echo '<span class="ind-status ' . $id . '-post__in"></span>' ;
|
@@ -231,7 +245,7 @@ class IS_Search_Editor
|
|
231 |
}
|
232 |
|
233 |
}
|
234 |
-
echo '<br /><label for="' . $id . '-post__in" style="font-size: 10px;clear:both;display:block;">' . esc_html__( "Press CTRL key to select multiple terms or deselect them.", 'ivory-search' ) . '</label>' ;
|
235 |
?>
|
236 |
</div></div>
|
237 |
|
@@ -284,7 +298,7 @@ class IS_Search_Editor
|
|
284 |
}
|
285 |
|
286 |
}
|
287 |
-
echo '<br /><label for="' . $id . '-tax_query" style="font-size: 10px;clear:both;display:block;">' . esc_html__( "Press CTRL key to select multiple terms or deselect them.", 'ivory-search' ) . '</label>' ;
|
288 |
$ind_status = false;
|
289 |
if ( isset( $includes['tax_query'] ) && !empty($includes['tax_query']) ) {
|
290 |
$ind_status = true;
|
@@ -352,7 +366,7 @@ class IS_Search_Editor
|
|
352 |
echo '<option value="' . esc_attr( $meta_key ) . '" ' . selected( $meta_key, $checked, false ) . '>' . esc_html( $meta_key ) . '</option>' ;
|
353 |
}
|
354 |
echo '</select>' ;
|
355 |
-
echo '<br /><label for="' . $id . '-custom_field" style="font-size: 10px;clear:both;display:block;">' . esc_html__( "Press CTRL key to select multiple terms or deselect them.", 'ivory-search' ) . '</label>' ;
|
356 |
}
|
357 |
|
358 |
|
@@ -394,12 +408,22 @@ class IS_Search_Editor
|
|
394 |
}
|
395 |
|
396 |
if ( in_array( 'product', $args ) ) {
|
|
|
397 |
$woo_sku_disable = ( is_fs()->is_plan_or_trial( 'pro_plus' ) && $this->is_premium_plugin ? '' : ' disabled ' );
|
398 |
$checked = ( isset( $includes['woo']['sku'] ) && $includes['woo']['sku'] ? 1 : 0 );
|
|
|
|
|
|
|
399 |
echo '<p class="check-radio"><label for="' . $id . '-sku" ><input class="_is_includes-woocommerce" type="checkbox" ' . $woo_sku_disable . ' id="' . $id . '-sku" name="' . $id . '[woo][sku]" value="1" ' . checked( 1, $checked, false ) . '/>' ;
|
400 |
-
echo '<span class="toggle-check-text"></span>' . esc_html__( "Search in WooCommerce products SKU.", 'ivory-search' ) . '</label>' ;
|
|
|
|
|
|
|
|
|
|
|
|
|
401 |
echo IS_Admin::pro_link( 'pro_plus' ) . '</p>' ;
|
402 |
-
if ( $
|
403 |
echo '<span class="ind-status ' . $id . '-woocommerce"></span>' ;
|
404 |
}
|
405 |
} else {
|
@@ -723,7 +747,7 @@ class IS_Search_Editor
|
|
723 |
}
|
724 |
echo '</select>' ;
|
725 |
echo IS_Admin::pro_link( 'pro_plus' ) ;
|
726 |
-
echo '<br /><br /><label for="' . $id . '-post_file_type" style="font-size: 10px;clear:both;display:block;">' . esc_html__( "Press CTRL key to select multiple terms or deselect them.", 'ivory-search' ) . '</label>' ;
|
727 |
}
|
728 |
|
729 |
} else {
|
@@ -802,14 +826,14 @@ class IS_Search_Editor
|
|
802 |
foreach ( $post_types as $post_type ) {
|
803 |
$posts = get_posts( array(
|
804 |
'post_type' => $post_type,
|
805 |
-
'posts_per_page' =>
|
806 |
'orderby' => 'title',
|
807 |
'order' => 'ASC',
|
808 |
) );
|
809 |
|
810 |
if ( !empty($posts) ) {
|
811 |
$html = '<div class="col-wrapper"><div class="col-title">';
|
812 |
-
$col_title = ucwords( $post_type );
|
813 |
$temp = '';
|
814 |
$selected_pt = array();
|
815 |
foreach ( $posts as $post2 ) {
|
@@ -825,7 +849,11 @@ class IS_Search_Editor
|
|
825 |
}
|
826 |
$html .= $col_title . '<input class="list-search" placeholder="' . __( "Search..", 'ivory-search' ) . '" type="text"></div>';
|
827 |
$html .= '<select class="_is_excludes-post__not_in" name="' . $id . '[post__not_in][]" multiple size="8" >';
|
828 |
-
$html .= $temp . '</select
|
|
|
|
|
|
|
|
|
829 |
echo $html ;
|
830 |
if ( !empty($selected_pt) ) {
|
831 |
echo '<span class="ind-status ' . $id . '-post__not_in"></span>' ;
|
@@ -833,7 +861,7 @@ class IS_Search_Editor
|
|
833 |
}
|
834 |
|
835 |
}
|
836 |
-
echo '<br /><label for="' . $id . '-post__not_in" style="font-size: 10px;clear:both;display:block;">' . esc_html__( "Press CTRL key to select multiple terms or deselect them.", 'ivory-search' ) . '</label>' ;
|
837 |
} else {
|
838 |
_e( 'Search is already limited to specific posts selected in Includes section.', 'ivory-search' );
|
839 |
}
|
@@ -885,7 +913,7 @@ class IS_Search_Editor
|
|
885 |
}
|
886 |
|
887 |
}
|
888 |
-
echo '<br /><label for="' . $id . '-tax_query" style="font-size: 10px;clear:both;display:block;">' . esc_html__( "Press CTRL key to select multiple terms or deselect them.", 'ivory-search' ) . '</label>' ;
|
889 |
if ( isset( $excludes['tax_query'] ) && !empty($excludes['tax_query']) ) {
|
890 |
echo '<span class="ind-status ' . $id . '-tax_query"></span>' ;
|
891 |
}
|
@@ -931,7 +959,7 @@ class IS_Search_Editor
|
|
931 |
}
|
932 |
echo '</select>' ;
|
933 |
echo IS_Admin::pro_link() ;
|
934 |
-
echo '<br /><br /><label for="' . $id . '-custom_field" style="font-size: 10px;clear:both;display:block;">' . esc_html__( "Press CTRL key to select multiple terms or deselect them.", 'ivory-search' ) . '</label>' ;
|
935 |
}
|
936 |
|
937 |
|
@@ -1139,7 +1167,7 @@ class IS_Search_Editor
|
|
1139 |
}
|
1140 |
echo '</select>' ;
|
1141 |
echo IS_Admin::pro_link( 'pro_plus' ) ;
|
1142 |
-
echo '<br /><br /><label for="' . $id . '-post_file_type" style="font-size: 10px;clear:both;display:block;">' . esc_html__( "Press CTRL key to select multiple terms or deselect them.", 'ivory-search' ) . '</label>' ;
|
1143 |
}
|
1144 |
|
1145 |
} else {
|
@@ -1171,7 +1199,7 @@ class IS_Search_Editor
|
|
1171 |
<?php
|
1172 |
}
|
1173 |
|
1174 |
-
public function
|
1175 |
{
|
1176 |
$id = '_is_settings';
|
1177 |
$settings = $post->prop( $id );
|
31 |
return;
|
32 |
}
|
33 |
echo '<ul id="search-form-editor-tabs">' ;
|
34 |
+
$url = esc_url( menu_page_url( 'ivory-search-new', false ) );
|
35 |
+
if ( isset( $_GET['post'] ) ) {
|
36 |
+
$url = esc_url( menu_page_url( 'ivory-search', false ) ) . '&post=' . $_GET['post'] . '&action=edit';
|
37 |
}
|
38 |
+
$tab = ( isset( $_GET['tab'] ) ? $_GET['tab'] : 'includes' );
|
39 |
foreach ( $this->panels as $id => $panel ) {
|
40 |
+
$class = ( $tab == $id ? 'active' : '' );
|
41 |
+
echo sprintf(
|
42 |
+
'<li id="%1$s-tab" class="%2$s"><a href="%3$s">%4$s</a></li>',
|
43 |
+
esc_attr( $id ),
|
44 |
+
esc_attr( $class ),
|
45 |
+
$url . '&tab=' . $id,
|
46 |
+
esc_html( $panel['title'] )
|
47 |
+
) ;
|
48 |
}
|
49 |
+
echo '</ul>' ;
|
50 |
+
echo sprintf( '<div class="search-form-editor-panel" id="%1$s">', esc_attr( $tab ) ) ;
|
51 |
+
$this->notice( $tab, $tab . '_panel' );
|
52 |
+
$callback = $tab . '_panel';
|
53 |
+
$this->{$callback}( $this->search_form );
|
54 |
+
echo '</div>' ;
|
55 |
}
|
56 |
|
57 |
public function notice( $id, $panel )
|
88 |
{
|
89 |
$id = '_is_includes';
|
90 |
$includes = $post->prop( $id );
|
|
|
91 |
$excludes = $post->prop( '_is_excludes' );
|
92 |
+
$settings = $post->prop( '_is_settings' );
|
93 |
?>
|
94 |
<h4 class="panel-desc">
|
95 |
<?php
|
210 |
foreach ( $post_types as $post_type ) {
|
211 |
$posts = get_posts( array(
|
212 |
'post_type' => $post_type,
|
213 |
+
'posts_per_page' => 100,
|
214 |
'orderby' => 'title',
|
215 |
'order' => 'ASC',
|
216 |
) );
|
217 |
|
218 |
if ( !empty($posts) ) {
|
219 |
$html = '<div class="col-wrapper"><div class="col-title">';
|
220 |
+
$col_title = '<span>' . ucwords( $post_type ) . '</span>';
|
221 |
$temp = '';
|
222 |
$selected_pt = array();
|
223 |
foreach ( $posts as $post2 ) {
|
233 |
}
|
234 |
$html .= $col_title . '<input class="list-search" placeholder="' . __( "Search..", 'ivory-search' ) . '" type="text"></div>';
|
235 |
$html .= '<select class="_is_includes-post__in" name="' . $id . '[post__in][]" multiple size="8" >';
|
236 |
+
$html .= $temp . '</select>';
|
237 |
+
if ( count( $posts ) >= 100 ) {
|
238 |
+
$html .= '<div id="' . $post_type . '" class="load-all">' . __( 'Load All', 'ivory-search' ) . '</div>';
|
239 |
+
}
|
240 |
+
$html .= '</div>';
|
241 |
echo $html ;
|
242 |
if ( !empty($selected_pt) ) {
|
243 |
echo '<span class="ind-status ' . $id . '-post__in"></span>' ;
|
245 |
}
|
246 |
|
247 |
}
|
248 |
+
echo '<br /><label for="' . $id . '-post__in" style="font-size: 10px;clear:both;display:block;">' . esc_html__( "Press CTRL key & Left Mouse button to select multiple terms or deselect them.", 'ivory-search' ) . '</label>' ;
|
249 |
?>
|
250 |
</div></div>
|
251 |
|
298 |
}
|
299 |
|
300 |
}
|
301 |
+
echo '<br /><label for="' . $id . '-tax_query" style="font-size: 10px;clear:both;display:block;">' . esc_html__( "Press CTRL key & Left Mouse button to select multiple terms or deselect them.", 'ivory-search' ) . '</label>' ;
|
302 |
$ind_status = false;
|
303 |
if ( isset( $includes['tax_query'] ) && !empty($includes['tax_query']) ) {
|
304 |
$ind_status = true;
|
366 |
echo '<option value="' . esc_attr( $meta_key ) . '" ' . selected( $meta_key, $checked, false ) . '>' . esc_html( $meta_key ) . '</option>' ;
|
367 |
}
|
368 |
echo '</select>' ;
|
369 |
+
echo '<br /><label for="' . $id . '-custom_field" style="font-size: 10px;clear:both;display:block;">' . esc_html__( "Press CTRL key & Left Mouse button to select multiple terms or deselect them.", 'ivory-search' ) . '</label>' ;
|
370 |
}
|
371 |
|
372 |
|
408 |
}
|
409 |
|
410 |
if ( in_array( 'product', $args ) ) {
|
411 |
+
$ind_status = false;
|
412 |
$woo_sku_disable = ( is_fs()->is_plan_or_trial( 'pro_plus' ) && $this->is_premium_plugin ? '' : ' disabled ' );
|
413 |
$checked = ( isset( $includes['woo']['sku'] ) && $includes['woo']['sku'] ? 1 : 0 );
|
414 |
+
if ( $checked ) {
|
415 |
+
$ind_status = true;
|
416 |
+
}
|
417 |
echo '<p class="check-radio"><label for="' . $id . '-sku" ><input class="_is_includes-woocommerce" type="checkbox" ' . $woo_sku_disable . ' id="' . $id . '-sku" name="' . $id . '[woo][sku]" value="1" ' . checked( 1, $checked, false ) . '/>' ;
|
418 |
+
echo '<span class="toggle-check-text"></span>' . esc_html__( "Search in WooCommerce products SKU.", 'ivory-search' ) . '</label></p>' ;
|
419 |
+
$checked = ( isset( $includes['woo']['variation'] ) && $includes['woo']['variation'] ? 1 : 0 );
|
420 |
+
if ( !$ind_status && $checked ) {
|
421 |
+
$ind_status = true;
|
422 |
+
}
|
423 |
+
echo '<p class="check-radio"><label for="' . $id . '-variation" ><input class="_is_includes-woocommerce" type="checkbox" ' . $woo_sku_disable . ' id="' . $id . '-variation" name="' . $id . '[woo][variation]" value="1" ' . checked( 1, $checked, false ) . '/>' ;
|
424 |
+
echo '<span class="toggle-check-text"></span>' . esc_html__( "Search in WooCommerce products variation.", 'ivory-search' ) . '</label>' ;
|
425 |
echo IS_Admin::pro_link( 'pro_plus' ) . '</p>' ;
|
426 |
+
if ( $ind_status ) {
|
427 |
echo '<span class="ind-status ' . $id . '-woocommerce"></span>' ;
|
428 |
}
|
429 |
} else {
|
747 |
}
|
748 |
echo '</select>' ;
|
749 |
echo IS_Admin::pro_link( 'pro_plus' ) ;
|
750 |
+
echo '<br /><br /><label for="' . $id . '-post_file_type" style="font-size: 10px;clear:both;display:block;">' . esc_html__( "Press CTRL key & Left Mouse button to select multiple terms or deselect them.", 'ivory-search' ) . '</label>' ;
|
751 |
}
|
752 |
|
753 |
} else {
|
826 |
foreach ( $post_types as $post_type ) {
|
827 |
$posts = get_posts( array(
|
828 |
'post_type' => $post_type,
|
829 |
+
'posts_per_page' => 3,
|
830 |
'orderby' => 'title',
|
831 |
'order' => 'ASC',
|
832 |
) );
|
833 |
|
834 |
if ( !empty($posts) ) {
|
835 |
$html = '<div class="col-wrapper"><div class="col-title">';
|
836 |
+
$col_title = '<span>' . ucwords( $post_type ) . '</span>';
|
837 |
$temp = '';
|
838 |
$selected_pt = array();
|
839 |
foreach ( $posts as $post2 ) {
|
849 |
}
|
850 |
$html .= $col_title . '<input class="list-search" placeholder="' . __( "Search..", 'ivory-search' ) . '" type="text"></div>';
|
851 |
$html .= '<select class="_is_excludes-post__not_in" name="' . $id . '[post__not_in][]" multiple size="8" >';
|
852 |
+
$html .= $temp . '</select>';
|
853 |
+
if ( count( $posts ) >= 3 ) {
|
854 |
+
$html .= '<div id="' . $post_type . '" class="load-all">' . __( 'Load All', 'ivory-search' ) . '</div>';
|
855 |
+
}
|
856 |
+
$html .= '</div>';
|
857 |
echo $html ;
|
858 |
if ( !empty($selected_pt) ) {
|
859 |
echo '<span class="ind-status ' . $id . '-post__not_in"></span>' ;
|
861 |
}
|
862 |
|
863 |
}
|
864 |
+
echo '<br /><label for="' . $id . '-post__not_in" style="font-size: 10px;clear:both;display:block;">' . esc_html__( "Press CTRL key & Left Mouse button to select multiple terms or deselect them.", 'ivory-search' ) . '</label>' ;
|
865 |
} else {
|
866 |
_e( 'Search is already limited to specific posts selected in Includes section.', 'ivory-search' );
|
867 |
}
|
913 |
}
|
914 |
|
915 |
}
|
916 |
+
echo '<br /><label for="' . $id . '-tax_query" style="font-size: 10px;clear:both;display:block;">' . esc_html__( "Press CTRL key & Left Mouse button to select multiple terms or deselect them.", 'ivory-search' ) . '</label>' ;
|
917 |
if ( isset( $excludes['tax_query'] ) && !empty($excludes['tax_query']) ) {
|
918 |
echo '<span class="ind-status ' . $id . '-tax_query"></span>' ;
|
919 |
}
|
959 |
}
|
960 |
echo '</select>' ;
|
961 |
echo IS_Admin::pro_link() ;
|
962 |
+
echo '<br /><br /><label for="' . $id . '-custom_field" style="font-size: 10px;clear:both;display:block;">' . esc_html__( "Press CTRL key & Left Mouse button to select multiple terms or deselect them.", 'ivory-search' ) . '</label>' ;
|
963 |
}
|
964 |
|
965 |
|
1167 |
}
|
1168 |
echo '</select>' ;
|
1169 |
echo IS_Admin::pro_link( 'pro_plus' ) ;
|
1170 |
+
echo '<br /><br /><label for="' . $id . '-post_file_type" style="font-size: 10px;clear:both;display:block;">' . esc_html__( "Press CTRL key & Left Mouse button to select multiple terms or deselect them.", 'ivory-search' ) . '</label>' ;
|
1171 |
}
|
1172 |
|
1173 |
} else {
|
1199 |
<?php
|
1200 |
}
|
1201 |
|
1202 |
+
public function options_panel( $post )
|
1203 |
{
|
1204 |
$id = '_is_settings';
|
1205 |
$settings = $post->prop( $id );
|
admin/class-is-settings-fields.php
CHANGED
@@ -41,8 +41,7 @@ class IS_Settings_Fields
|
|
41 |
if ( null !== $is ) {
|
42 |
$this->opt = $is;
|
43 |
} else {
|
44 |
-
$
|
45 |
-
$this->opt = array_merge( $old_opt, (array) $new_opt );
|
46 |
}
|
47 |
|
48 |
}
|
@@ -63,26 +62,25 @@ class IS_Settings_Fields
|
|
63 |
/**
|
64 |
* Displays settings sections having custom markup.
|
65 |
*/
|
66 |
-
public function is_do_settings_sections( $page )
|
67 |
{
|
68 |
global $wp_settings_sections, $wp_settings_fields ;
|
69 |
if ( !isset( $wp_settings_sections[$page] ) ) {
|
70 |
return;
|
71 |
}
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
}
|
79 |
-
if ( !isset( $wp_settings_fields ) || !isset( $wp_settings_fields[$page] ) || !isset( $wp_settings_fields[$page][$section['id']] ) ) {
|
80 |
-
continue;
|
81 |
-
}
|
82 |
-
echo '<div class="form-table">' ;
|
83 |
-
$this->is_do_settings_fields( $page, $section['id'] );
|
84 |
-
echo '</div>' ;
|
85 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
86 |
}
|
87 |
|
88 |
/**
|
@@ -117,137 +115,155 @@ class IS_Settings_Fields
|
|
117 |
*/
|
118 |
function register_settings_fields()
|
119 |
{
|
120 |
-
|
121 |
-
'
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
'ivory_search',
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
245 |
}
|
246 |
|
247 |
/**
|
248 |
* Displays Search To Menu section description text.
|
249 |
*/
|
250 |
-
function
|
251 |
{
|
252 |
echo '<h4 class="panel-desc">' . __( 'Use below options to display search in menu and configure it.', 'ivory-search' ) . '</h4>' ;
|
253 |
}
|
@@ -257,8 +273,6 @@ class IS_Settings_Fields
|
|
257 |
*/
|
258 |
function settings_section_desc()
|
259 |
{
|
260 |
-
echo '</div>' ;
|
261 |
-
echo '<div class="search-form-editor-panel" id="settings">' ;
|
262 |
echo '<h4 class="panel-desc">' . __( 'Use below options to make sitewide changes in search.', 'ivory-search' ) . '</h4>' ;
|
263 |
}
|
264 |
|
@@ -282,7 +296,7 @@ class IS_Settings_Fields
|
|
282 |
$check_value = ( isset( $this->opt['add_search_to_menu_locations'][$location] ) ? $this->opt['add_search_to_menu_locations'][$location] : 0 );
|
283 |
}
|
284 |
|
285 |
-
$html .= '<p><label for="is_menus' . esc_attr( $location ) . '"><input type="checkbox" class="ivory_search_locations" id="is_menus' . esc_attr( $location ) . '" name="
|
286 |
$html .= '<span class="toggle-check-text"></span> ' . esc_html( $description ) . '</label></p>';
|
287 |
}
|
288 |
} else {
|
@@ -298,8 +312,6 @@ class IS_Settings_Fields
|
|
298 |
function menu_search_form()
|
299 |
{
|
300 |
$content = __( 'Select search form that will control search performed using menu search.', 'ivory-search' );
|
301 |
-
$content .= '<br />';
|
302 |
-
$content .= __( 'It overwrites above Post Types option.', 'ivory-search' );
|
303 |
IS_Help::help_info( $content );
|
304 |
$html = '<p>';
|
305 |
$form_disable = ( is_fs()->is_plan_or_trial( 'pro' ) && $this->is_premium_plugin ? false : true );
|
@@ -317,7 +329,7 @@ class IS_Settings_Fields
|
|
317 |
$check_value = ( isset( $this->opt['menu_search_form'] ) ? $this->opt['menu_search_form'] : 0 );
|
318 |
$check_value = ( $check_value ? $check_value : 'default' );
|
319 |
$select_disable = ( $form_disable ? 'disabled' : '' );
|
320 |
-
$html .= '<select class="ivory_search_form" ' . $select_disable . ' id="menu_search_form" name="
|
321 |
foreach ( $posts as $post ) {
|
322 |
if ( 'default' === $check_value && 'Default Search Form' === $post->post_title ) {
|
323 |
$check_value = $post->ID;
|
@@ -372,7 +384,7 @@ class IS_Settings_Fields
|
|
372 |
$html .= '<p>';
|
373 |
}
|
374 |
|
375 |
-
$html .= '<label for="is_menu_style' . esc_attr( $key ) . '"><input class="ivory_search_style" type="radio" id="is_menu_style' . esc_attr( $key ) . '" name="
|
376 |
$html .= ( $popup_disable && 'popup' === $key ? ' disabled ' : '' );
|
377 |
$html .= 'name="ivory_search[menu_style]" value="' . esc_attr( $key ) . '" ' . checked( $key, $check_value, false ) . '/>';
|
378 |
$html .= '<span class="toggle-check-text"></span>' . esc_html( $style ) . '</label>';
|
@@ -390,7 +402,7 @@ class IS_Settings_Fields
|
|
390 |
IS_Help::help_info( $content );
|
391 |
$this->opt['add_search_to_menu_title'] = ( isset( $this->opt['add_search_to_menu_title'] ) ? $this->opt['add_search_to_menu_title'] : '' );
|
392 |
$this->opt['menu_title'] = ( isset( $this->opt['menu_title'] ) ? $this->opt['menu_title'] : $this->opt['add_search_to_menu_title'] );
|
393 |
-
$html = '<input class="ivory_search_title" type="text" class="ivory_search_title" id="is_menu_title" name="
|
394 |
echo '<div>' . $html . '</div>' ;
|
395 |
}
|
396 |
|
@@ -403,7 +415,7 @@ class IS_Settings_Fields
|
|
403 |
IS_Help::help_info( $content );
|
404 |
$this->opt['add_search_to_menu_classes'] = ( isset( $this->opt['add_search_to_menu_classes'] ) ? $this->opt['add_search_to_menu_classes'] : '' );
|
405 |
$this->opt['menu_classes'] = ( isset( $this->opt['menu_classes'] ) ? $this->opt['menu_classes'] : $this->opt['add_search_to_menu_classes'] );
|
406 |
-
$html = '<input class="ivory_search_classes" type="text" class="ivory_search_classes" id="is_menu_classes" name="
|
407 |
$html .= '<br /><label for="is_menu_classes" style="font-size: 10px;">' . esc_html__( "Add classes seperated by space.", 'ivory-search' ) . '</label>';
|
408 |
echo '<div>' . $html . '</div>' ;
|
409 |
}
|
@@ -417,65 +429,25 @@ class IS_Settings_Fields
|
|
417 |
IS_Help::help_info( $content );
|
418 |
$this->opt['add_search_to_menu_gcse'] = ( isset( $this->opt['add_search_to_menu_gcse'] ) ? $this->opt['add_search_to_menu_gcse'] : '' );
|
419 |
$this->opt['menu_gcse'] = ( isset( $this->opt['menu_gcse'] ) ? $this->opt['menu_gcse'] : $this->opt['add_search_to_menu_gcse'] );
|
420 |
-
$html = '<input class="ivory_search_gcse" type="text" class="large-text" id="is_menu_gcse" name="
|
421 |
echo '<div>' . $html . '</div>' ;
|
422 |
}
|
423 |
|
424 |
/**
|
425 |
-
* Displays
|
426 |
*/
|
427 |
-
function
|
428 |
{
|
429 |
-
$
|
430 |
-
|
431 |
-
$check_value = ( isset( $this->opt['add_search_to_menu_display_in_header'] ) ? $this->opt['add_search_to_menu_display_in_header'] : 0 );
|
432 |
-
$check_string = checked( 'add_search_to_menu_display_in_header', $check_value, false );
|
433 |
-
|
434 |
-
if ( $this->ivory_search ) {
|
435 |
-
$check_value = ( isset( $this->opt['header_menu_search'] ) ? $this->opt['header_menu_search'] : 0 );
|
436 |
-
$check_string = checked( 'header_menu_search', $check_value, false );
|
437 |
-
}
|
438 |
-
|
439 |
-
$html = '<label for="is_search_in_header"><input class="ivory_search_display_in_header" type="checkbox" id="is_search_in_header" name="ivory_search[header_menu_search]" value="header_menu_search" ' . $check_string . ' />';
|
440 |
-
$html .= '<span class="toggle-check-text"></span>' . esc_html__( 'Display search form in header on mobile devices', 'ivory-search' ) . '</label>';
|
441 |
-
echo '<div>' . $html . '</div><br />' ;
|
442 |
-
$html = '';
|
443 |
-
$content = __( 'Use this option to display search form in your site header and hide the search form on desktop using CSS code.', 'ivory-search' );
|
444 |
-
IS_Help::help_info( $content );
|
445 |
-
$check_value = ( isset( $this->opt['astm_site_uses_cache'] ) ? $this->opt['astm_site_uses_cache'] : 0 );
|
446 |
-
$check_string = checked( 'astm_site_uses_cache', $check_value, false );
|
447 |
|
448 |
if ( $this->ivory_search ) {
|
449 |
-
$check_value = ( isset( $this->opt['
|
450 |
-
$check_string = checked( '
|
451 |
}
|
452 |
|
453 |
-
$html
|
454 |
-
$html .= '<span class="toggle-check-text"></span>' . esc_html__( '
|
455 |
-
echo '<div>' . $html . '</div>' ;
|
456 |
-
}
|
457 |
-
|
458 |
-
/**
|
459 |
-
* Disables search functionality on whole site.
|
460 |
-
*/
|
461 |
-
function disable()
|
462 |
-
{
|
463 |
-
$check_value = ( isset( $this->opt['disable'] ) ? $this->opt['disable'] : 0 );
|
464 |
-
$disable = checked( 1, $check_value, false );
|
465 |
-
$html = '<label for="is_disable"><input class="ivory_search_disable" type="checkbox" id="is_disable" name="ivory_search[disable]" value="1" ' . $disable . ' />';
|
466 |
-
$html .= '<span class="toggle-check-text"></span>' . esc_html__( 'Disable search functionality on whole site.', 'ivory-search' ) . '</label>';
|
467 |
-
echo '<div>' . $html . '</div>' ;
|
468 |
-
}
|
469 |
-
|
470 |
-
/**
|
471 |
-
* Controls default search functionality.
|
472 |
-
*/
|
473 |
-
function default_search()
|
474 |
-
{
|
475 |
-
$check_value = ( isset( $this->opt['default_search'] ) ? $this->opt['default_search'] : 0 );
|
476 |
-
$disable = checked( 1, $check_value, false );
|
477 |
-
$html = '<label for="is_default_search"><input class="ivory_search_default" type="checkbox" id="is_default_search" name="ivory_search[default_search]" value="1" ' . $disable . ' />';
|
478 |
-
$html .= '<span class="toggle-check-text"></span>' . esc_html__( 'Do not use default search form to control WordPress default search functionality.', 'ivory-search' ) . '</label>';
|
479 |
echo '<div>' . $html . '</div>' ;
|
480 |
}
|
481 |
|
@@ -495,7 +467,7 @@ class IS_Settings_Fields
|
|
495 |
|
496 |
if ( !empty($posts) ) {
|
497 |
$check_value = ( isset( $this->opt['header_search'] ) ? $this->opt['header_search'] : 0 );
|
498 |
-
$html .= '<select class="ivory_search_header" id="is_header_search" name="
|
499 |
$html .= '<option value="0" ' . selected( 0, $check_value, false ) . '>' . __( 'none', 'ivory-search' ) . '</option>';
|
500 |
foreach ( $posts as $post ) {
|
501 |
$html .= '<option value="' . $post->ID . '"' . selected( $post->ID, $check_value, false ) . ' >' . $post->post_title . '</option>';
|
@@ -529,7 +501,7 @@ class IS_Settings_Fields
|
|
529 |
|
530 |
if ( !empty($posts) ) {
|
531 |
$check_value = ( isset( $this->opt['footer_search'] ) ? $this->opt['footer_search'] : 0 );
|
532 |
-
$html .= '<select class="ivory_search_footer" id="is_footer_search" name="
|
533 |
$html .= '<option value="0" ' . selected( 0, $check_value, false ) . '>' . __( 'none', 'ivory-search' ) . '</option>';
|
534 |
foreach ( $posts as $post ) {
|
535 |
$html .= '<option value="' . $post->ID . '"' . selected( $post->ID, $check_value, false ) . ' >' . $post->post_title . '</option>';
|
@@ -548,20 +520,36 @@ class IS_Settings_Fields
|
|
548 |
}
|
549 |
|
550 |
/**
|
551 |
-
* Displays
|
552 |
*/
|
553 |
-
function
|
554 |
{
|
555 |
-
$
|
556 |
-
|
|
|
|
|
557 |
|
558 |
if ( $this->ivory_search ) {
|
559 |
-
$check_value = ( isset( $this->opt['
|
560 |
-
$check_string = checked( '
|
561 |
}
|
562 |
|
563 |
-
$html = '<label for="
|
564 |
-
$html .= '<span class="toggle-check-text"></span>' . esc_html__( 'Display
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
565 |
echo '<div>' . $html . '</div>' ;
|
566 |
}
|
567 |
|
@@ -574,7 +562,7 @@ class IS_Settings_Fields
|
|
574 |
IS_Help::help_info( $content );
|
575 |
$this->opt['add_search_to_menu_css'] = ( isset( $this->opt['add_search_to_menu_css'] ) ? $this->opt['add_search_to_menu_css'] : '' );
|
576 |
$this->opt['custom_css'] = ( isset( $this->opt['custom_css'] ) ? $this->opt['custom_css'] : $this->opt['add_search_to_menu_css'] );
|
577 |
-
$html = '<textarea class="ivory_search_css" rows="4" id="custom_css" name="
|
578 |
echo '<div>' . $html . '</div>' ;
|
579 |
}
|
580 |
|
@@ -587,7 +575,7 @@ class IS_Settings_Fields
|
|
587 |
$content .= '<br />' . __( 'This works with search form.', 'ivory-search' );
|
588 |
IS_Help::help_info( $content );
|
589 |
$this->opt['stopwords'] = ( isset( $this->opt['stopwords'] ) ? $this->opt['stopwords'] : '' );
|
590 |
-
$html = '<textarea class="ivory_search_stopwords" rows="4" id="stopwords" name="
|
591 |
$html .= '<br /><label for="stopwords" style="font-size: 10px;">' . esc_html__( "Please separate words with commas.", 'ivory-search' ) . '</label>';
|
592 |
echo '<div>' . $html . '</div>' ;
|
593 |
}
|
@@ -602,7 +590,7 @@ class IS_Settings_Fields
|
|
602 |
$content .= '<br /><br />' . __( 'This only works for search forms and in OR searches. In AND searches the synonyms only restrict the search, as now the search only finds posts that contain both bird and crow.', 'ivory-search' );
|
603 |
IS_Help::help_info( $content );
|
604 |
$this->opt['synonyms'] = ( isset( $this->opt['synonyms'] ) ? $this->opt['synonyms'] : '' );
|
605 |
-
$html = '<textarea class="ivory_search_synonyms" rows="4" id="synonyms" name="
|
606 |
$html .= '<br /><label for="synonyms" style="font-size: 10px;">' . esc_html__( 'The format here is key = value;. Please separate every synonyms key = value pairs with semicolon.', 'ivory-search' ) . '</label>';
|
607 |
$synonyms_disable = ( is_fs()->is_plan_or_trial( 'pro' ) && $this->is_premium_plugin ? '' : ' disabled ' );
|
608 |
$check_value = ( isset( $this->opt['synonyms_and'] ) ? $this->opt['synonyms_and'] : 0 );
|
@@ -614,7 +602,7 @@ class IS_Settings_Fields
|
|
614 |
$html .= '<p>';
|
615 |
}
|
616 |
|
617 |
-
$html .= '<label for="synonyms_and"><input class="ivory_search_synonyms" type="checkbox" ' . $synonyms_disable . ' id="synonyms_and" name="
|
618 |
$html .= '<span class="toggle-check-text"></span>' . esc_html__( 'Disable synonyms for the search forms having AND search terms relation.', 'ivory-search' ) . '</label>';
|
619 |
echo '</p><div>' . $html . '</div>' ;
|
620 |
}
|
@@ -640,7 +628,7 @@ class IS_Settings_Fields
|
|
640 |
$check_string = checked( $key, $check_value, false );
|
641 |
}
|
642 |
|
643 |
-
$html .= '<label for="not_load_files[' . esc_attr( $key ) . ']"><input class="not_load_files" type="checkbox" id="not_load_files[' . esc_attr( $key ) . ']" name="
|
644 |
$html .= '<span class="toggle-check-text"></span>' . esc_html( $file ) . '</label>';
|
645 |
|
646 |
if ( 'css' == $key ) {
|
@@ -656,5 +644,29 @@ class IS_Settings_Fields
|
|
656 |
}
|
657 |
echo '<div>' . $html . '</div>' ;
|
658 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
659 |
|
660 |
}
|
41 |
if ( null !== $is ) {
|
42 |
$this->opt = $is;
|
43 |
} else {
|
44 |
+
$this->opt = Ivory_Search::load_options();
|
|
|
45 |
}
|
46 |
|
47 |
}
|
62 |
/**
|
63 |
* Displays settings sections having custom markup.
|
64 |
*/
|
65 |
+
public function is_do_settings_sections( $page, $sec )
|
66 |
{
|
67 |
global $wp_settings_sections, $wp_settings_fields ;
|
68 |
if ( !isset( $wp_settings_sections[$page] ) ) {
|
69 |
return;
|
70 |
}
|
71 |
+
$section = (array) $wp_settings_sections[$page][$sec];
|
72 |
+
if ( $section['title'] ) {
|
73 |
+
echo "<h2>{$section['title']}</h2>\n" ;
|
74 |
+
}
|
75 |
+
if ( $section['callback'] ) {
|
76 |
+
call_user_func( $section['callback'], $section );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
77 |
}
|
78 |
+
if ( !isset( $wp_settings_fields ) || !isset( $wp_settings_fields[$page] ) || !isset( $wp_settings_fields[$page][$section['id']] ) ) {
|
79 |
+
return;
|
80 |
+
}
|
81 |
+
echo '<div class="form-table search-form-editor-box">' ;
|
82 |
+
$this->is_do_settings_fields( $page, $section['id'] );
|
83 |
+
echo '</div>' ;
|
84 |
}
|
85 |
|
86 |
/**
|
115 |
*/
|
116 |
function register_settings_fields()
|
117 |
{
|
118 |
+
if ( !empty($GLOBALS['pagenow']) && 'options.php' === $GLOBALS['pagenow'] ) {
|
119 |
+
if ( isset( $_POST['is_settings'] ) ) {
|
120 |
+
add_filter( 'whitelist_options', function ( $whitelist_options ) {
|
121 |
+
$whitelist_options['ivory_search'][0] = 'is_settings';
|
122 |
+
return $whitelist_options;
|
123 |
+
} );
|
124 |
+
}
|
125 |
+
}
|
126 |
+
|
127 |
+
if ( !isset( $_GET['tab'] ) || 'menu-search' == $_GET['tab'] ) {
|
128 |
+
add_settings_section(
|
129 |
+
'ivory_search_section',
|
130 |
+
'',
|
131 |
+
array( $this, 'menu_search_section_desc' ),
|
132 |
+
'ivory_search'
|
133 |
+
);
|
134 |
+
add_settings_field(
|
135 |
+
'ivory_search_locations',
|
136 |
+
__( 'Select Menu', 'ivory-search' ),
|
137 |
+
array( $this, 'menu_locations' ),
|
138 |
+
'ivory_search',
|
139 |
+
'ivory_search_section'
|
140 |
+
);
|
141 |
+
add_settings_field(
|
142 |
+
'ivory_search_form',
|
143 |
+
__( 'Search Form', 'ivory-search' ),
|
144 |
+
array( $this, 'menu_search_form' ),
|
145 |
+
'ivory_search',
|
146 |
+
'ivory_search_section'
|
147 |
+
);
|
148 |
+
add_settings_field(
|
149 |
+
'ivory_search_style',
|
150 |
+
__( 'Form Style', 'ivory-search' ),
|
151 |
+
array( $this, 'menu_form_style' ),
|
152 |
+
'ivory_search',
|
153 |
+
'ivory_search_section'
|
154 |
+
);
|
155 |
+
add_settings_field(
|
156 |
+
'ivory_search_title',
|
157 |
+
__( 'Menu Title', 'ivory-search' ),
|
158 |
+
array( $this, 'menu_title' ),
|
159 |
+
'ivory_search',
|
160 |
+
'ivory_search_section'
|
161 |
+
);
|
162 |
+
add_settings_field(
|
163 |
+
'ivory_search_classes',
|
164 |
+
__( 'Menu Classes', 'ivory-search' ),
|
165 |
+
array( $this, 'menu_classes' ),
|
166 |
+
'ivory_search',
|
167 |
+
'ivory_search_section'
|
168 |
+
);
|
169 |
+
add_settings_field(
|
170 |
+
'ivory_search_gcse',
|
171 |
+
__( 'Google CSE', 'ivory-search' ),
|
172 |
+
array( $this, 'menu_google_cse' ),
|
173 |
+
'ivory_search',
|
174 |
+
'ivory_search_section'
|
175 |
+
);
|
176 |
+
add_settings_field(
|
177 |
+
'ivory_search_close_icon',
|
178 |
+
__( 'Close Icon', 'ivory-search' ),
|
179 |
+
array( $this, 'menu_close_icon' ),
|
180 |
+
'ivory_search',
|
181 |
+
'ivory_search_section'
|
182 |
+
);
|
183 |
+
register_setting( 'ivory_search', 'is_menu_search' );
|
184 |
+
} else {
|
185 |
+
|
186 |
+
if ( isset( $_GET['tab'] ) && 'settings' == $_GET['tab'] ) {
|
187 |
+
add_settings_section(
|
188 |
+
'ivory_search_settings',
|
189 |
+
'',
|
190 |
+
array( $this, 'settings_section_desc' ),
|
191 |
+
'ivory_search'
|
192 |
+
);
|
193 |
+
add_settings_field(
|
194 |
+
'ivory_search_header',
|
195 |
+
__( 'Header', 'ivory-search' ),
|
196 |
+
array( $this, 'header' ),
|
197 |
+
'ivory_search',
|
198 |
+
'ivory_search_settings'
|
199 |
+
);
|
200 |
+
add_settings_field(
|
201 |
+
'ivory_search_footer',
|
202 |
+
__( 'Footer', 'ivory-search' ),
|
203 |
+
array( $this, 'footer' ),
|
204 |
+
'ivory_search',
|
205 |
+
'ivory_search_settings'
|
206 |
+
);
|
207 |
+
add_settings_field(
|
208 |
+
'ivory_search_display_in_header',
|
209 |
+
__( 'Mobile Display', 'ivory-search' ),
|
210 |
+
array( $this, 'menu_search_in_header' ),
|
211 |
+
'ivory_search',
|
212 |
+
'ivory_search_settings'
|
213 |
+
);
|
214 |
+
add_settings_field(
|
215 |
+
'ivory_search_css',
|
216 |
+
__( 'Custom CSS', 'ivory-search' ),
|
217 |
+
array( $this, 'custom_css' ),
|
218 |
+
'ivory_search',
|
219 |
+
'ivory_search_settings'
|
220 |
+
);
|
221 |
+
add_settings_field(
|
222 |
+
'ivory_search_stopwords',
|
223 |
+
__( 'Stopwords', 'ivory-search' ),
|
224 |
+
array( $this, 'stopwords' ),
|
225 |
+
'ivory_search',
|
226 |
+
'ivory_search_settings'
|
227 |
+
);
|
228 |
+
add_settings_field(
|
229 |
+
'ivory_search_synonyms',
|
230 |
+
__( 'Synonyms', 'ivory-search' ),
|
231 |
+
array( $this, 'synonyms' ),
|
232 |
+
'ivory_search',
|
233 |
+
'ivory_search_settings'
|
234 |
+
);
|
235 |
+
add_settings_field(
|
236 |
+
'not_load_files',
|
237 |
+
__( 'Not load files', 'ivory-search' ),
|
238 |
+
array( $this, 'plugin_files' ),
|
239 |
+
'ivory_search',
|
240 |
+
'ivory_search_settings'
|
241 |
+
);
|
242 |
+
add_settings_field(
|
243 |
+
'ivory_search_disable',
|
244 |
+
__( 'Disable', 'ivory-search' ),
|
245 |
+
array( $this, 'disable' ),
|
246 |
+
'ivory_search',
|
247 |
+
'ivory_search_settings'
|
248 |
+
);
|
249 |
+
add_settings_field(
|
250 |
+
'ivory_search_default',
|
251 |
+
__( 'Default Search', 'ivory-search' ),
|
252 |
+
array( $this, 'default_search' ),
|
253 |
+
'ivory_search',
|
254 |
+
'ivory_search_settings'
|
255 |
+
);
|
256 |
+
register_setting( 'ivory_search', 'is_settings' );
|
257 |
+
}
|
258 |
+
|
259 |
+
}
|
260 |
+
|
261 |
}
|
262 |
|
263 |
/**
|
264 |
* Displays Search To Menu section description text.
|
265 |
*/
|
266 |
+
function menu_search_section_desc()
|
267 |
{
|
268 |
echo '<h4 class="panel-desc">' . __( 'Use below options to display search in menu and configure it.', 'ivory-search' ) . '</h4>' ;
|
269 |
}
|
273 |
*/
|
274 |
function settings_section_desc()
|
275 |
{
|
|
|
|
|
276 |
echo '<h4 class="panel-desc">' . __( 'Use below options to make sitewide changes in search.', 'ivory-search' ) . '</h4>' ;
|
277 |
}
|
278 |
|
296 |
$check_value = ( isset( $this->opt['add_search_to_menu_locations'][$location] ) ? $this->opt['add_search_to_menu_locations'][$location] : 0 );
|
297 |
}
|
298 |
|
299 |
+
$html .= '<p><label for="is_menus' . esc_attr( $location ) . '"><input type="checkbox" class="ivory_search_locations" id="is_menus' . esc_attr( $location ) . '" name="is_menu_search[menus][' . esc_attr( $location ) . ']" value="' . esc_attr( $location ) . '" ' . checked( $location, $check_value, false ) . '/>';
|
300 |
$html .= '<span class="toggle-check-text"></span> ' . esc_html( $description ) . '</label></p>';
|
301 |
}
|
302 |
} else {
|
312 |
function menu_search_form()
|
313 |
{
|
314 |
$content = __( 'Select search form that will control search performed using menu search.', 'ivory-search' );
|
|
|
|
|
315 |
IS_Help::help_info( $content );
|
316 |
$html = '<p>';
|
317 |
$form_disable = ( is_fs()->is_plan_or_trial( 'pro' ) && $this->is_premium_plugin ? false : true );
|
329 |
$check_value = ( isset( $this->opt['menu_search_form'] ) ? $this->opt['menu_search_form'] : 0 );
|
330 |
$check_value = ( $check_value ? $check_value : 'default' );
|
331 |
$select_disable = ( $form_disable ? 'disabled' : '' );
|
332 |
+
$html .= '<select class="ivory_search_form" ' . $select_disable . ' id="menu_search_form" name="is_menu_search[menu_search_form]" >';
|
333 |
foreach ( $posts as $post ) {
|
334 |
if ( 'default' === $check_value && 'Default Search Form' === $post->post_title ) {
|
335 |
$check_value = $post->ID;
|
384 |
$html .= '<p>';
|
385 |
}
|
386 |
|
387 |
+
$html .= '<label for="is_menu_style' . esc_attr( $key ) . '"><input class="ivory_search_style" type="radio" id="is_menu_style' . esc_attr( $key ) . '" name="is_menu_search[menu_style]"';
|
388 |
$html .= ( $popup_disable && 'popup' === $key ? ' disabled ' : '' );
|
389 |
$html .= 'name="ivory_search[menu_style]" value="' . esc_attr( $key ) . '" ' . checked( $key, $check_value, false ) . '/>';
|
390 |
$html .= '<span class="toggle-check-text"></span>' . esc_html( $style ) . '</label>';
|
402 |
IS_Help::help_info( $content );
|
403 |
$this->opt['add_search_to_menu_title'] = ( isset( $this->opt['add_search_to_menu_title'] ) ? $this->opt['add_search_to_menu_title'] : '' );
|
404 |
$this->opt['menu_title'] = ( isset( $this->opt['menu_title'] ) ? $this->opt['menu_title'] : $this->opt['add_search_to_menu_title'] );
|
405 |
+
$html = '<input class="ivory_search_title" type="text" class="ivory_search_title" id="is_menu_title" name="is_menu_search[menu_title]" value="' . esc_attr( $this->opt['menu_title'] ) . '" />';
|
406 |
echo '<div>' . $html . '</div>' ;
|
407 |
}
|
408 |
|
415 |
IS_Help::help_info( $content );
|
416 |
$this->opt['add_search_to_menu_classes'] = ( isset( $this->opt['add_search_to_menu_classes'] ) ? $this->opt['add_search_to_menu_classes'] : '' );
|
417 |
$this->opt['menu_classes'] = ( isset( $this->opt['menu_classes'] ) ? $this->opt['menu_classes'] : $this->opt['add_search_to_menu_classes'] );
|
418 |
+
$html = '<input class="ivory_search_classes" type="text" class="ivory_search_classes" id="is_menu_classes" name="is_menu_search[menu_classes]" value="' . esc_attr( $this->opt['menu_classes'] ) . '" />';
|
419 |
$html .= '<br /><label for="is_menu_classes" style="font-size: 10px;">' . esc_html__( "Add classes seperated by space.", 'ivory-search' ) . '</label>';
|
420 |
echo '<div>' . $html . '</div>' ;
|
421 |
}
|
429 |
IS_Help::help_info( $content );
|
430 |
$this->opt['add_search_to_menu_gcse'] = ( isset( $this->opt['add_search_to_menu_gcse'] ) ? $this->opt['add_search_to_menu_gcse'] : '' );
|
431 |
$this->opt['menu_gcse'] = ( isset( $this->opt['menu_gcse'] ) ? $this->opt['menu_gcse'] : $this->opt['add_search_to_menu_gcse'] );
|
432 |
+
$html = '<input class="ivory_search_gcse" type="text" class="large-text" id="is_menu_gcse" name="is_menu_search[menu_gcse]" value="' . esc_attr( $this->opt['menu_gcse'] ) . '" />';
|
433 |
echo '<div>' . $html . '</div>' ;
|
434 |
}
|
435 |
|
436 |
/**
|
437 |
+
* Displays search form close icon field.
|
438 |
*/
|
439 |
+
function menu_close_icon()
|
440 |
{
|
441 |
+
$check_value = ( isset( $this->opt['add_search_to_menu_close_icon'] ) ? $this->opt['add_search_to_menu_close_icon'] : 0 );
|
442 |
+
$check_string = checked( 'add_search_to_menu_close_icon', $check_value, false );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
443 |
|
444 |
if ( $this->ivory_search ) {
|
445 |
+
$check_value = ( isset( $this->opt['menu_close_icon'] ) ? $this->opt['menu_close_icon'] : 0 );
|
446 |
+
$check_string = checked( 'menu_close_icon', $check_value, false );
|
447 |
}
|
448 |
|
449 |
+
$html = '<label for="menu_close_icon"><input class="ivory_search_close_icon" type="checkbox" id="menu_close_icon" name="is_menu_search[menu_close_icon]" value="menu_close_icon" ' . $check_string . ' />';
|
450 |
+
$html .= '<span class="toggle-check-text"></span>' . esc_html__( 'Display Search Form Close Icon', 'ivory-search' ) . '</label>';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
451 |
echo '<div>' . $html . '</div>' ;
|
452 |
}
|
453 |
|
467 |
|
468 |
if ( !empty($posts) ) {
|
469 |
$check_value = ( isset( $this->opt['header_search'] ) ? $this->opt['header_search'] : 0 );
|
470 |
+
$html .= '<select class="ivory_search_header" id="is_header_search" name="is_settings[header_search]" >';
|
471 |
$html .= '<option value="0" ' . selected( 0, $check_value, false ) . '>' . __( 'none', 'ivory-search' ) . '</option>';
|
472 |
foreach ( $posts as $post ) {
|
473 |
$html .= '<option value="' . $post->ID . '"' . selected( $post->ID, $check_value, false ) . ' >' . $post->post_title . '</option>';
|
501 |
|
502 |
if ( !empty($posts) ) {
|
503 |
$check_value = ( isset( $this->opt['footer_search'] ) ? $this->opt['footer_search'] : 0 );
|
504 |
+
$html .= '<select class="ivory_search_footer" id="is_footer_search" name="is_settings[footer_search]" >';
|
505 |
$html .= '<option value="0" ' . selected( 0, $check_value, false ) . '>' . __( 'none', 'ivory-search' ) . '</option>';
|
506 |
foreach ( $posts as $post ) {
|
507 |
$html .= '<option value="' . $post->ID . '"' . selected( $post->ID, $check_value, false ) . ' >' . $post->post_title . '</option>';
|
520 |
}
|
521 |
|
522 |
/**
|
523 |
+
* Displays display in header field.
|
524 |
*/
|
525 |
+
function menu_search_in_header()
|
526 |
{
|
527 |
+
$content = __( 'Note: Does not work with caching as this functionality uses the WordPress wp_is_mobile function.', 'ivory-search' );
|
528 |
+
IS_Help::help_info( $content );
|
529 |
+
$check_value = ( isset( $this->opt['add_search_to_menu_display_in_header'] ) ? $this->opt['add_search_to_menu_display_in_header'] : 0 );
|
530 |
+
$check_string = checked( 'add_search_to_menu_display_in_header', $check_value, false );
|
531 |
|
532 |
if ( $this->ivory_search ) {
|
533 |
+
$check_value = ( isset( $this->opt['header_menu_search'] ) ? $this->opt['header_menu_search'] : 0 );
|
534 |
+
$check_string = checked( 'header_menu_search', $check_value, false );
|
535 |
}
|
536 |
|
537 |
+
$html = '<label for="is_search_in_header"><input class="ivory_search_display_in_header" type="checkbox" id="is_search_in_header" name="is_settings[header_menu_search]" value="header_menu_search" ' . $check_string . ' />';
|
538 |
+
$html .= '<span class="toggle-check-text"></span>' . esc_html__( 'Display search form in header on mobile devices', 'ivory-search' ) . '</label>';
|
539 |
+
echo '<div>' . $html . '</div><br />' ;
|
540 |
+
$html = '';
|
541 |
+
$content = __( 'Use this option to display search form in your site header and hide the search form on desktop using CSS code.', 'ivory-search' );
|
542 |
+
IS_Help::help_info( $content );
|
543 |
+
$check_value = ( isset( $this->opt['astm_site_uses_cache'] ) ? $this->opt['astm_site_uses_cache'] : 0 );
|
544 |
+
$check_string = checked( 'astm_site_uses_cache', $check_value, false );
|
545 |
+
|
546 |
+
if ( $this->ivory_search ) {
|
547 |
+
$check_value = ( isset( $this->opt['site_uses_cache'] ) ? $this->opt['site_uses_cache'] : 0 );
|
548 |
+
$check_string = checked( 'site_uses_cache', $check_value, false );
|
549 |
+
}
|
550 |
+
|
551 |
+
$html .= '<label for="is_site_uses_cache"><input class="ivory_search_display_in_header" type="checkbox" id="is_site_uses_cache" name="is_settings[site_uses_cache]" value="site_uses_cache" ' . $check_string . ' />';
|
552 |
+
$html .= '<span class="toggle-check-text"></span>' . esc_html__( 'This site uses cache', 'ivory-search' ) . '</label>';
|
553 |
echo '<div>' . $html . '</div>' ;
|
554 |
}
|
555 |
|
562 |
IS_Help::help_info( $content );
|
563 |
$this->opt['add_search_to_menu_css'] = ( isset( $this->opt['add_search_to_menu_css'] ) ? $this->opt['add_search_to_menu_css'] : '' );
|
564 |
$this->opt['custom_css'] = ( isset( $this->opt['custom_css'] ) ? $this->opt['custom_css'] : $this->opt['add_search_to_menu_css'] );
|
565 |
+
$html = '<textarea class="ivory_search_css" rows="4" id="custom_css" name="is_settings[custom_css]" >' . esc_attr( $this->opt['custom_css'] ) . '</textarea>';
|
566 |
echo '<div>' . $html . '</div>' ;
|
567 |
}
|
568 |
|
575 |
$content .= '<br />' . __( 'This works with search form.', 'ivory-search' );
|
576 |
IS_Help::help_info( $content );
|
577 |
$this->opt['stopwords'] = ( isset( $this->opt['stopwords'] ) ? $this->opt['stopwords'] : '' );
|
578 |
+
$html = '<textarea class="ivory_search_stopwords" rows="4" id="stopwords" name="is_settings[stopwords]" >' . esc_attr( $this->opt['stopwords'] ) . '</textarea>';
|
579 |
$html .= '<br /><label for="stopwords" style="font-size: 10px;">' . esc_html__( "Please separate words with commas.", 'ivory-search' ) . '</label>';
|
580 |
echo '<div>' . $html . '</div>' ;
|
581 |
}
|
590 |
$content .= '<br /><br />' . __( 'This only works for search forms and in OR searches. In AND searches the synonyms only restrict the search, as now the search only finds posts that contain both bird and crow.', 'ivory-search' );
|
591 |
IS_Help::help_info( $content );
|
592 |
$this->opt['synonyms'] = ( isset( $this->opt['synonyms'] ) ? $this->opt['synonyms'] : '' );
|
593 |
+
$html = '<textarea class="ivory_search_synonyms" rows="4" id="synonyms" name="is_settings[synonyms]" >' . esc_attr( $this->opt['synonyms'] ) . '</textarea>';
|
594 |
$html .= '<br /><label for="synonyms" style="font-size: 10px;">' . esc_html__( 'The format here is key = value;. Please separate every synonyms key = value pairs with semicolon.', 'ivory-search' ) . '</label>';
|
595 |
$synonyms_disable = ( is_fs()->is_plan_or_trial( 'pro' ) && $this->is_premium_plugin ? '' : ' disabled ' );
|
596 |
$check_value = ( isset( $this->opt['synonyms_and'] ) ? $this->opt['synonyms_and'] : 0 );
|
602 |
$html .= '<p>';
|
603 |
}
|
604 |
|
605 |
+
$html .= '<label for="synonyms_and"><input class="ivory_search_synonyms" type="checkbox" ' . $synonyms_disable . ' id="synonyms_and" name="is_settings[synonyms_and]" value="1" ' . $disable . ' />';
|
606 |
$html .= '<span class="toggle-check-text"></span>' . esc_html__( 'Disable synonyms for the search forms having AND search terms relation.', 'ivory-search' ) . '</label>';
|
607 |
echo '</p><div>' . $html . '</div>' ;
|
608 |
}
|
628 |
$check_string = checked( $key, $check_value, false );
|
629 |
}
|
630 |
|
631 |
+
$html .= '<label for="not_load_files[' . esc_attr( $key ) . ']"><input class="not_load_files" type="checkbox" id="not_load_files[' . esc_attr( $key ) . ']" name="is_settings[not_load_files][' . esc_attr( $key ) . ']" value="' . esc_attr( $key ) . '" ' . $check_string . '/>';
|
632 |
$html .= '<span class="toggle-check-text"></span>' . esc_html( $file ) . '</label>';
|
633 |
|
634 |
if ( 'css' == $key ) {
|
644 |
}
|
645 |
echo '<div>' . $html . '</div>' ;
|
646 |
}
|
647 |
+
|
648 |
+
/**
|
649 |
+
* Disables search functionality on whole site.
|
650 |
+
*/
|
651 |
+
function disable()
|
652 |
+
{
|
653 |
+
$check_value = ( isset( $this->opt['disable'] ) ? $this->opt['disable'] : 0 );
|
654 |
+
$disable = checked( 1, $check_value, false );
|
655 |
+
$html = '<label for="is_disable"><input class="ivory_search_disable" type="checkbox" id="is_disable" name="is_settings[disable]" value="1" ' . $disable . ' />';
|
656 |
+
$html .= '<span class="toggle-check-text"></span>' . esc_html__( 'Disable search functionality on whole site.', 'ivory-search' ) . '</label>';
|
657 |
+
echo '<div>' . $html . '</div>' ;
|
658 |
+
}
|
659 |
+
|
660 |
+
/**
|
661 |
+
* Controls default search functionality.
|
662 |
+
*/
|
663 |
+
function default_search()
|
664 |
+
{
|
665 |
+
$check_value = ( isset( $this->opt['default_search'] ) ? $this->opt['default_search'] : 0 );
|
666 |
+
$disable = checked( 1, $check_value, false );
|
667 |
+
$html = '<label for="is_default_search"><input class="ivory_search_default" type="checkbox" id="is_default_search" name="is_settings[default_search]" value="1" ' . $disable . ' />';
|
668 |
+
$html .= '<span class="toggle-check-text"></span>' . esc_html__( 'Do not use default search form to control WordPress default search functionality.', 'ivory-search' ) . '</label>';
|
669 |
+
echo '<div>' . $html . '</div>' ;
|
670 |
+
}
|
671 |
|
672 |
}
|
admin/css/ivory-search-admin.css
CHANGED
@@ -358,18 +358,6 @@ h1.wp-heading-inline {
|
|
358 |
width: 100%;
|
359 |
}
|
360 |
|
361 |
-
#search-form-editor > div {
|
362 |
-
display: none;
|
363 |
-
}
|
364 |
-
|
365 |
-
#search-form-editor + p.submit {
|
366 |
-
display: none;
|
367 |
-
}
|
368 |
-
|
369 |
-
#search-form-editor.ui-tabs + p.submit {
|
370 |
-
display: block;
|
371 |
-
}
|
372 |
-
|
373 |
#search-form-editor-tabs {
|
374 |
left: -210px;
|
375 |
position: absolute;
|
@@ -389,8 +377,8 @@ h1.wp-heading-inline {
|
|
389 |
}
|
390 |
|
391 |
#search-form-editor-tabs li:hover,
|
392 |
-
#search-form-editor-tabs li.
|
393 |
-
#search-form-editor-tabs li.
|
394 |
background-color: #3985C4;
|
395 |
}
|
396 |
|
@@ -407,7 +395,7 @@ h1.wp-heading-inline {
|
|
407 |
}
|
408 |
|
409 |
#search-form-editor-tabs li:hover a,
|
410 |
-
#search-form-editor-tabs li.
|
411 |
color: #FFF;
|
412 |
}
|
413 |
|
@@ -421,7 +409,7 @@ h1.wp-heading-inline {
|
|
421 |
right: 5px;
|
422 |
}
|
423 |
|
424 |
-
#search-form-editor-tabs li.
|
425 |
#search-form-editor-tabs li:hover a::after {
|
426 |
color: #FFF;
|
427 |
}
|
@@ -457,6 +445,7 @@ h1.wp-heading-inline {
|
|
457 |
.search-form-editor-box {
|
458 |
background-color: #f1f1f1;
|
459 |
padding: 16px;
|
|
|
460 |
}
|
461 |
|
462 |
h4.panel-desc {
|
@@ -473,7 +462,7 @@ h4.panel-desc {
|
|
473 |
text-decoration: none;
|
474 |
}
|
475 |
|
476 |
-
.form-table h3 {
|
477 |
clear: both;
|
478 |
cursor: pointer;
|
479 |
background-color: #1390cc;
|
@@ -484,6 +473,12 @@ h4.panel-desc {
|
|
484 |
margin: 1.5em 0 0;
|
485 |
}
|
486 |
|
|
|
|
|
|
|
|
|
|
|
|
|
487 |
.form-table h3 .actions {
|
488 |
float: right;
|
489 |
}
|
@@ -600,9 +595,19 @@ h4.panel-desc {
|
|
600 |
.col-wrapper {
|
601 |
float: left;
|
602 |
margin: 0 20px 15px 0;
|
|
|
603 |
width: 190px;
|
604 |
}
|
605 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
606 |
#search-form-editor .col-wrapper:nth-of-type(3n+0) {
|
607 |
margin-right: 0;
|
608 |
}
|
@@ -646,11 +651,18 @@ h4.panel-desc {
|
|
646 |
|
647 |
.col-wrapper.after,
|
648 |
.col-wrapper.before {
|
649 |
-
|
650 |
}
|
651 |
|
652 |
.col-wrapper.before {
|
653 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
654 |
}
|
655 |
|
656 |
@media screen and ( max-width: 450px ) {
|
358 |
width: 100%;
|
359 |
}
|
360 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
361 |
#search-form-editor-tabs {
|
362 |
left: -210px;
|
363 |
position: absolute;
|
377 |
}
|
378 |
|
379 |
#search-form-editor-tabs li:hover,
|
380 |
+
#search-form-editor-tabs li.active,
|
381 |
+
#search-form-editor-tabs li.active:hover {
|
382 |
background-color: #3985C4;
|
383 |
}
|
384 |
|
395 |
}
|
396 |
|
397 |
#search-form-editor-tabs li:hover a,
|
398 |
+
#search-form-editor-tabs li.active a {
|
399 |
color: #FFF;
|
400 |
}
|
401 |
|
409 |
right: 5px;
|
410 |
}
|
411 |
|
412 |
+
#search-form-editor-tabs li.active a::after,
|
413 |
#search-form-editor-tabs li:hover a::after {
|
414 |
color: #FFF;
|
415 |
}
|
445 |
.search-form-editor-box {
|
446 |
background-color: #f1f1f1;
|
447 |
padding: 16px;
|
448 |
+
width: auto;
|
449 |
}
|
450 |
|
451 |
h4.panel-desc {
|
462 |
text-decoration: none;
|
463 |
}
|
464 |
|
465 |
+
#search-body .form-table h3 {
|
466 |
clear: both;
|
467 |
cursor: pointer;
|
468 |
background-color: #1390cc;
|
473 |
margin: 1.5em 0 0;
|
474 |
}
|
475 |
|
476 |
+
#search-body .search-form-editor-panel {
|
477 |
+
background: none;
|
478 |
+
border: 0;
|
479 |
+
color: #444;
|
480 |
+
}
|
481 |
+
|
482 |
.form-table h3 .actions {
|
483 |
float: right;
|
484 |
}
|
595 |
.col-wrapper {
|
596 |
float: left;
|
597 |
margin: 0 20px 15px 0;
|
598 |
+
position: relative;
|
599 |
width: 190px;
|
600 |
}
|
601 |
|
602 |
+
.col-wrapper .spinner {
|
603 |
+
display: inline-block;
|
604 |
+
visibility: visible;
|
605 |
+
position: absolute;
|
606 |
+
bottom: 35%;
|
607 |
+
right: 45%;
|
608 |
+
z-index: 999999;
|
609 |
+
}
|
610 |
+
|
611 |
#search-form-editor .col-wrapper:nth-of-type(3n+0) {
|
612 |
margin-right: 0;
|
613 |
}
|
651 |
|
652 |
.col-wrapper.after,
|
653 |
.col-wrapper.before {
|
654 |
+
width: auto;
|
655 |
}
|
656 |
|
657 |
.col-wrapper.before {
|
658 |
+
margin-right: 0;
|
659 |
+
}
|
660 |
+
|
661 |
+
.load-all {
|
662 |
+
text-align: center;
|
663 |
+
font-weight: 800;
|
664 |
+
color: #6994d8;
|
665 |
+
cursor: pointer;
|
666 |
}
|
667 |
|
668 |
@media screen and ( max-width: 450px ) {
|
admin/js/ivory-search-admin.js
CHANGED
@@ -8,42 +8,35 @@
|
|
8 |
|
9 |
$( function() {
|
10 |
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
if ( $( '#ivory_search_options' ).length ) {
|
41 |
-
document.cookie = 'active-url=;expires=Thu, 01 Jan 1970 00:00:01 GMT;path=/';
|
42 |
-
document.cookie = 'active-tab=;expires=Thu, 01 Jan 1970 00:00:01 GMT;path=/';
|
43 |
-
document.cookie = 'active-url=' + newUrl + ';path=/';
|
44 |
-
document.cookie = 'active-tab=' + ui.newTab.index() + ';path=/';
|
45 |
-
}
|
46 |
-
}
|
47 |
} );
|
48 |
|
49 |
$('.form-table .actions a.expand').click( function() {
|
@@ -68,7 +61,7 @@
|
|
68 |
icons: false,
|
69 |
} );
|
70 |
|
71 |
-
$('#search-body option').mousedown(function(e) {
|
72 |
if ($(this).attr('selected')) {
|
73 |
$(this).removeAttr('selected');
|
74 |
return false;
|
@@ -163,32 +156,6 @@
|
|
163 |
} );
|
164 |
} );
|
165 |
|
166 |
-
ivory_search.getCookie = function(cname) {
|
167 |
-
var name = cname + "=";
|
168 |
-
var decodedCookie = decodeURIComponent(document.cookie);
|
169 |
-
var ca = decodedCookie.split(';');
|
170 |
-
for(var i = 0; i <ca.length; i++) {
|
171 |
-
var c = ca[i];
|
172 |
-
while (c.charAt(0) == ' ') {
|
173 |
-
c = c.substring(1);
|
174 |
-
}
|
175 |
-
if (c.indexOf(name) == 0) {
|
176 |
-
return c.substring(name.length, c.length);
|
177 |
-
}
|
178 |
-
}
|
179 |
-
return "";
|
180 |
-
}
|
181 |
-
|
182 |
-
ivory_search.getParameterByName = function( name, url ) {
|
183 |
-
if (!url) url = window.location.href;
|
184 |
-
name = name.replace(/[\[\]]/g, "\\$&");
|
185 |
-
var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
|
186 |
-
results = regex.exec(url);
|
187 |
-
if (!results) return null;
|
188 |
-
if (!results[2]) return '';
|
189 |
-
return decodeURIComponent(results[2].replace(/\+/g, " "));
|
190 |
-
}
|
191 |
-
|
192 |
ivory_search.titleHint = function() {
|
193 |
var $title = $( '#title' );
|
194 |
var $titleprompt = $( '#title-prompt-text' );
|
8 |
|
9 |
$( function() {
|
10 |
|
11 |
+
$( window ).load( function() {
|
12 |
+
$( '.col-wrapper .load-all' ).on( 'click', function() {
|
13 |
+
var post_id = $('#post_ID').val();
|
14 |
+
var post_type = $(this).attr('id');
|
15 |
+
var this_load = $(this);
|
16 |
+
var inc_exc = $('.search-form-editor-panel').attr('id');
|
17 |
+
$(this).parent().append('<span class="spinner"></span>');
|
18 |
+
$.ajax( {
|
19 |
+
type : "post",
|
20 |
+
url: ivory_search.ajaxUrl,
|
21 |
+
data: {
|
22 |
+
action: 'display_posts',
|
23 |
+
post_id: post_id,
|
24 |
+
post_type: post_type,
|
25 |
+
inc_exc: inc_exc
|
26 |
+
},
|
27 |
+
success: function( response ) {
|
28 |
+
$(this_load).parent().find('select').find('option').remove().end().append(response );
|
29 |
+
if ( $(this_load).parent().find('select option:selected').length ) {
|
30 |
+
$(this_load).parent().find('.col-title span').html( '<strong>'+$(this_load).parent().find('.col-title').text()+'</strong>');
|
31 |
+
}
|
32 |
+
$(this_load).parent().find('.spinner').remove();
|
33 |
+
$(this_load).remove();
|
34 |
+
},
|
35 |
+
error: function (request, error) {
|
36 |
+
alert( " The posts could not be loaded. Because: " + error );
|
37 |
+
}
|
38 |
+
} );
|
39 |
+
} );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
40 |
} );
|
41 |
|
42 |
$('.form-table .actions a.expand').click( function() {
|
61 |
icons: false,
|
62 |
} );
|
63 |
|
64 |
+
$('#search-body select[multiple] option').mousedown(function(e) {
|
65 |
if ($(this).attr('selected')) {
|
66 |
$(this).removeAttr('selected');
|
67 |
return false;
|
156 |
} );
|
157 |
} );
|
158 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
159 |
ivory_search.titleHint = function() {
|
160 |
var $title = $( '#title' );
|
161 |
var $titleprompt = $( '#title-prompt-text' );
|
admin/partials/{new-search-form.php → search-form.php}
RENAMED
@@ -44,9 +44,11 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
44 |
} else {
|
45 |
$disabled = ' disabled="disabled"';
|
46 |
}
|
|
|
|
|
47 |
?>
|
48 |
|
49 |
-
<form method="post" action="<?php echo esc_url( add_query_arg( array( 'post' => $post_id ), menu_page_url( 'ivory-search', false ) ) ); ?>" id="is-admin-form-element"<?php do_action( 'is_post_edit_form_tag' ); ?>>
|
50 |
<?php
|
51 |
if ( current_user_can( 'is_edit_search_form', $post_id ) ) {
|
52 |
wp_nonce_field( 'is-save-search-form_' . $post_id );
|
@@ -55,7 +57,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
55 |
<input type="hidden" id="post_ID" name="post_ID" value="<?php echo (int) $post_id; ?>" />
|
56 |
<input type="hidden" id="is_locale" name="is_locale" value="<?php echo esc_attr( $post->locale() ); ?>" />
|
57 |
<input type="hidden" id="hiddenaction" name="action" value="save" />
|
58 |
-
<input type="hidden" id="
|
59 |
|
60 |
<div id="poststuff">
|
61 |
<div id="search-body" class="metabox-holder columns-2">
|
@@ -112,9 +114,9 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
112 |
'title' => __( 'Excludes', 'ivory-search' ),
|
113 |
'callback' => 'excludes_panel',
|
114 |
),
|
115 |
-
'
|
116 |
'title' => __( 'Options', 'ivory-search' ),
|
117 |
-
'callback' => '
|
118 |
),
|
119 |
);
|
120 |
}
|
44 |
} else {
|
45 |
$disabled = ' disabled="disabled"';
|
46 |
}
|
47 |
+
|
48 |
+
$tab = isset( $_GET['tab'] ) ? $_GET['tab'] : 'includes';
|
49 |
?>
|
50 |
|
51 |
+
<form method="post" action="<?php echo esc_url( add_query_arg( array( 'post' => $post_id, 'tab' => $tab ), menu_page_url( 'ivory-search', false ) ) ); ?>" id="is-admin-form-element"<?php do_action( 'is_post_edit_form_tag' ); ?>>
|
52 |
<?php
|
53 |
if ( current_user_can( 'is_edit_search_form', $post_id ) ) {
|
54 |
wp_nonce_field( 'is-save-search-form_' . $post_id );
|
57 |
<input type="hidden" id="post_ID" name="post_ID" value="<?php echo (int) $post_id; ?>" />
|
58 |
<input type="hidden" id="is_locale" name="is_locale" value="<?php echo esc_attr( $post->locale() ); ?>" />
|
59 |
<input type="hidden" id="hiddenaction" name="action" value="save" />
|
60 |
+
<input type="hidden" id="tab" name="tab" value="<?php echo $tab; ?>" />
|
61 |
|
62 |
<div id="poststuff">
|
63 |
<div id="search-body" class="metabox-holder columns-2">
|
114 |
'title' => __( 'Excludes', 'ivory-search' ),
|
115 |
'callback' => 'excludes_panel',
|
116 |
),
|
117 |
+
'options' => array(
|
118 |
'title' => __( 'Options', 'ivory-search' ),
|
119 |
+
'callback' => 'options_panel',
|
120 |
),
|
121 |
);
|
122 |
}
|
admin/partials/settings-form.php
CHANGED
@@ -32,12 +32,10 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
32 |
<div id="search-form-editor">
|
33 |
<?php
|
34 |
settings_fields( 'ivory_search' );
|
35 |
-
$activetab = isset( $_GET['active-tab'] ) ? (int) $_GET['active-tab'] : '0';
|
36 |
-
echo '<input type="hidden" id="active-tab" name="active-tab" value="'. $activetab .'" />';
|
37 |
|
38 |
$panels = array(
|
39 |
-
'search
|
40 |
-
'search
|
41 |
'Menu Search',
|
42 |
),
|
43 |
'settings' => array(
|
@@ -48,16 +46,25 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
48 |
|
49 |
echo '<ul id="search-form-editor-tabs">';
|
50 |
|
|
|
|
|
|
|
51 |
foreach ( $panels as $id => $panel ) {
|
52 |
-
|
53 |
-
|
|
|
54 |
}
|
55 |
|
56 |
echo '</ul>';
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
|
|
|
|
|
|
|
|
|
|
61 |
?>
|
62 |
</div><!-- #search-form-editor -->
|
63 |
|
32 |
<div id="search-form-editor">
|
33 |
<?php
|
34 |
settings_fields( 'ivory_search' );
|
|
|
|
|
35 |
|
36 |
$panels = array(
|
37 |
+
'menu-search' => array(
|
38 |
+
'menu-search',
|
39 |
'Menu Search',
|
40 |
),
|
41 |
'settings' => array(
|
46 |
|
47 |
echo '<ul id="search-form-editor-tabs">';
|
48 |
|
49 |
+
$tab = isset( $_GET['tab'] ) ? $_GET['tab'] : 'menu-search';
|
50 |
+
$url = esc_url( menu_page_url( 'ivory-search-settings', false ) );
|
51 |
+
|
52 |
foreach ( $panels as $id => $panel ) {
|
53 |
+
$class = ( $tab == $id ) ? 'active' : '';
|
54 |
+
echo sprintf( '<li id="%1$s-tab" class="%2$s"><a href="%3$s">%4$s</a></li>',
|
55 |
+
esc_attr( $panel[0] ), esc_attr( $class ), $url . '&tab=' . $panel[0], esc_html( $panel[1] ) );
|
56 |
}
|
57 |
|
58 |
echo '</ul>';
|
59 |
+
|
60 |
+
$settings_fields = IS_Settings_Fields::getInstance();
|
61 |
+
|
62 |
+
if ( 'menu-search' == $tab ) {
|
63 |
+
$settings_fields->is_do_settings_sections( 'ivory_search', 'ivory_search_section' );
|
64 |
+
} else if ( 'settings' == $tab ) {
|
65 |
+
$settings_fields->is_do_settings_sections( 'ivory_search', 'ivory_search_settings' );
|
66 |
+
}
|
67 |
+
|
68 |
?>
|
69 |
</div><!-- #search-form-editor -->
|
70 |
|
includes/class-is-admin-public.php
CHANGED
@@ -28,9 +28,7 @@ class IS_Admin_Public {
|
|
28 |
if ( null !== $is ) {
|
29 |
$this->opt = $is->opt;
|
30 |
} else {
|
31 |
-
$
|
32 |
-
$new_opt = (array)get_option( 'ivory_search' );
|
33 |
-
$this->opt = array_merge( $old_opt, $new_opt );
|
34 |
}
|
35 |
}
|
36 |
|
28 |
if ( null !== $is ) {
|
29 |
$this->opt = $is->opt;
|
30 |
} else {
|
31 |
+
$this->opt = Ivory_Search::load_options();
|
|
|
|
|
32 |
}
|
33 |
}
|
34 |
|
includes/class-is-deactivator.php
CHANGED
@@ -19,13 +19,11 @@ class IS_Deactivator {
|
|
19 |
*/
|
20 |
public static function deactivate() {
|
21 |
|
22 |
-
$
|
23 |
-
$new_opt = (array)get_option( 'ivory_search' );
|
24 |
-
$opt = array_merge( $old_opt, $new_opt );
|
25 |
|
26 |
if ( isset( $opt['dismiss_admin_notices'] ) ) {
|
27 |
unset( $opt['dismiss_admin_notices'] );
|
28 |
-
update_option( '
|
29 |
}
|
30 |
}
|
31 |
}
|
19 |
*/
|
20 |
public static function deactivate() {
|
21 |
|
22 |
+
$opt = Ivory_Search::load_options();
|
|
|
|
|
23 |
|
24 |
if ( isset( $opt['dismiss_admin_notices'] ) ) {
|
25 |
unset( $opt['dismiss_admin_notices'] );
|
26 |
+
update_option( 'is_settings', $opt );
|
27 |
}
|
28 |
}
|
29 |
}
|
includes/class-is-search-form.php
CHANGED
@@ -129,22 +129,6 @@ class IS_Search_Form {
|
|
129 |
return $search_form;
|
130 |
}
|
131 |
|
132 |
-
private static function get_unit_tag( $id = 0 ) {
|
133 |
-
static $global_count = 0;
|
134 |
-
|
135 |
-
$global_count += 1;
|
136 |
-
|
137 |
-
if ( in_the_loop() ) {
|
138 |
-
$unit_tag = sprintf( 'ivory-search-f%1$d-p%2$d-o%3$d',
|
139 |
-
absint( $id ), get_the_ID(), $global_count );
|
140 |
-
} else {
|
141 |
-
$unit_tag = sprintf( 'ivory-search-f%1$d-o%2$d',
|
142 |
-
absint( $id ), $global_count );
|
143 |
-
}
|
144 |
-
|
145 |
-
return $unit_tag;
|
146 |
-
}
|
147 |
-
|
148 |
public function __get( $name ) {
|
149 |
$message = __( '<code>%1$s</code> property of a <code>IS_Search_Form</code> object is <strong>no longer accessible</strong>. Use <code>%2$s</code> method instead.', 'ivory-search' );
|
150 |
|
129 |
return $search_form;
|
130 |
}
|
131 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
132 |
public function __get( $name ) {
|
133 |
$message = __( '<code>%1$s</code> property of a <code>IS_Search_Form</code> object is <strong>no longer accessible</strong>. Use <code>%2$s</code> method instead.', 'ivory-search' );
|
134 |
|
includes/class-is.php
CHANGED
@@ -37,9 +37,7 @@ class IS_Loader {
|
|
37 |
if ( null !== $is_opt ) {
|
38 |
$this->opt = $is_opt;
|
39 |
} else {
|
40 |
-
$
|
41 |
-
$new_opt = (array)get_option( 'ivory_search' );
|
42 |
-
$this->opt = array_merge( $old_opt, $new_opt );
|
43 |
}
|
44 |
}
|
45 |
|
@@ -113,6 +111,8 @@ class IS_Loader {
|
|
113 |
add_action( 'admin_menu', array( $admin, 'admin_menu' ) );
|
114 |
add_action( 'wp_ajax_nopriv_dismiss_notice', array( $admin, 'dismiss_notice' ) );
|
115 |
add_action( 'wp_ajax_dismiss_notice', array( $admin, 'dismiss_notice' ) );
|
|
|
|
|
116 |
add_action( 'admin_enqueue_scripts', array( $admin, 'admin_enqueue_scripts' ) );
|
117 |
add_action( 'admin_init', array( $admin, 'admin_init' ) );
|
118 |
add_action( 'is_admin_notices', array( $admin, 'admin_updated_message' ) );
|
37 |
if ( null !== $is_opt ) {
|
38 |
$this->opt = $is_opt;
|
39 |
} else {
|
40 |
+
$this->opt = Ivory_Search::load_options();
|
|
|
|
|
41 |
}
|
42 |
}
|
43 |
|
111 |
add_action( 'admin_menu', array( $admin, 'admin_menu' ) );
|
112 |
add_action( 'wp_ajax_nopriv_dismiss_notice', array( $admin, 'dismiss_notice' ) );
|
113 |
add_action( 'wp_ajax_dismiss_notice', array( $admin, 'dismiss_notice' ) );
|
114 |
+
add_action( 'wp_ajax_nopriv_display_posts', array( $admin, 'display_posts' ) );
|
115 |
+
add_action( 'wp_ajax_display_posts', array( $admin, 'display_posts' ) );
|
116 |
add_action( 'admin_enqueue_scripts', array( $admin, 'admin_enqueue_scripts' ) );
|
117 |
add_action( 'admin_init', array( $admin, 'admin_init' ) );
|
118 |
add_action( 'is_admin_notices', array( $admin, 'admin_updated_message' ) );
|
languages/default.po
CHANGED
@@ -1,8 +1,8 @@
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Ivory Search\n"
|
4 |
-
"POT-Creation-Date: 2018-
|
5 |
-
"PO-Revision-Date: 2018-
|
6 |
"Last-Translator: \n"
|
7 |
"Language-Team: Ivory Search <admin@ivorysearch.com>\n"
|
8 |
"Language: en_US\n"
|
@@ -16,17 +16,16 @@ msgstr ""
|
|
16 |
"X-Poedit-SourceCharset: UTF-8\n"
|
17 |
"X-Poedit-SearchPath-0: ..\n"
|
18 |
|
19 |
-
#: ../admin/class-is-admin.php:
|
20 |
msgid "The changes you made will be lost if you navigate away from this page."
|
21 |
msgstr ""
|
22 |
|
23 |
-
#: ../admin/class-is-admin.php:
|
24 |
-
#: ../admin/partials/
|
25 |
-
#: ../admin/partials/settings-form.php:91
|
26 |
msgid "Support"
|
27 |
msgstr ""
|
28 |
|
29 |
-
#: ../admin/class-is-admin.php:
|
30 |
#, php-format
|
31 |
msgid ""
|
32 |
"To configure <em>Ivory Search plugin</em> please visit its <a href=\"%1$s"
|
@@ -35,605 +34,618 @@ msgid ""
|
|
35 |
"target=\"_blank\">contact us page</a>."
|
36 |
msgstr ""
|
37 |
|
38 |
-
#: ../admin/class-is-admin.php:
|
|
|
|
|
|
|
|
|
39 |
msgid "Search form created."
|
40 |
msgstr ""
|
41 |
|
42 |
-
#: ../admin/class-is-admin.php:
|
43 |
msgid "Search form saved."
|
44 |
msgstr ""
|
45 |
|
46 |
-
#: ../admin/class-is-admin.php:
|
47 |
msgid "Search form deleted."
|
48 |
msgstr ""
|
49 |
|
50 |
-
#: ../admin/class-is-admin.php:
|
51 |
msgid "Search form reset."
|
52 |
msgstr ""
|
53 |
|
54 |
-
#: ../admin/class-is-admin.php:
|
55 |
msgid "There was an error saving the search form."
|
56 |
msgstr ""
|
57 |
|
58 |
-
#: ../admin/class-is-admin.php:
|
59 |
msgid "There was a validation error saving the search form."
|
60 |
msgstr ""
|
61 |
|
62 |
-
#: ../admin/class-is-admin.php:
|
63 |
#, php-format
|
64 |
msgid ""
|
65 |
"Please make sure you have not selected similar %s fields in the search form "
|
66 |
"Includes and Excludes sections."
|
67 |
msgstr ""
|
68 |
|
69 |
-
#: ../admin/class-is-admin.php:
|
70 |
#: ../includes/class-is-widget.php:45
|
71 |
msgid "Ivory Search"
|
72 |
msgstr ""
|
73 |
|
74 |
-
#: ../admin/class-is-admin.php:
|
75 |
#: ../includes/class-is-search-form.php:59
|
76 |
msgid "Search Forms"
|
77 |
msgstr ""
|
78 |
|
79 |
-
#: ../admin/class-is-admin.php:
|
80 |
msgid "Add New Search Form"
|
81 |
msgstr ""
|
82 |
|
83 |
-
#: ../admin/class-is-admin.php:
|
84 |
-
#: ../admin/partials/
|
85 |
msgid "Add New"
|
86 |
msgstr ""
|
87 |
|
88 |
-
#: ../admin/class-is-admin.php:
|
89 |
msgid "Ivory Search Settings"
|
90 |
msgstr ""
|
91 |
|
92 |
-
#: ../admin/class-is-admin.php:
|
93 |
msgid "Settings"
|
94 |
msgstr ""
|
95 |
|
96 |
-
#: ../admin/class-is-admin.php:
|
97 |
#, php-format
|
98 |
msgid "Search results for “%s”"
|
99 |
msgstr ""
|
100 |
|
101 |
-
#: ../admin/class-is-admin.php:
|
102 |
msgid "Search Search Forms"
|
103 |
msgstr ""
|
104 |
|
105 |
-
#: ../admin/class-is-admin.php:
|
106 |
msgid "You are not allowed to edit this item."
|
107 |
msgstr ""
|
108 |
|
109 |
-
#: ../admin/class-is-admin.php:
|
110 |
msgid "You are not allowed to reset this item."
|
111 |
msgstr ""
|
112 |
|
113 |
-
#: ../admin/class-is-admin.php:
|
114 |
msgid "You are not allowed to copy this item."
|
115 |
msgstr ""
|
116 |
|
117 |
-
#: ../admin/class-is-admin.php:
|
118 |
msgid "You are not allowed to delete this item."
|
119 |
msgstr ""
|
120 |
|
121 |
-
#: ../admin/class-is-admin.php:
|
122 |
msgid "Error in deleting."
|
123 |
msgstr ""
|
124 |
|
125 |
-
#: ../admin/class-is-admin.php:
|
126 |
msgid "Save Form"
|
127 |
msgstr ""
|
128 |
|
129 |
-
#: ../admin/class-is-admin.php:
|
130 |
msgid "Upgrade To Access"
|
131 |
msgstr ""
|
132 |
|
133 |
-
#: ../admin/class-is-admin.php:
|
134 |
msgid "Install Pro Version To Access"
|
135 |
msgstr ""
|
136 |
|
137 |
-
#: ../admin/class-is-editor.php:
|
138 |
msgid "Configure the below options to make specific content searchable."
|
139 |
msgstr ""
|
140 |
|
141 |
-
#: ../admin/class-is-editor.php:
|
142 |
msgid "Post Types"
|
143 |
msgstr ""
|
144 |
|
145 |
-
#: ../admin/class-is-editor.php:
|
146 |
-
#: ../admin/class-is-editor.php:
|
147 |
-
#: ../admin/class-is-editor.php:
|
148 |
-
#: ../admin/class-is-editor.php:
|
149 |
-
#: ../admin/class-is-editor.php:
|
150 |
-
#: ../admin/class-is-editor.php:
|
151 |
-
#: ../admin/class-is-editor.php:
|
152 |
-
#: ../admin/class-is-editor.php:
|
153 |
-
#: ../admin/class-is-editor.php:
|
154 |
-
#: ../admin/class-is-editor.php:
|
155 |
-
#: ../admin/class-is-editor.php:
|
156 |
-
#: ../admin/class-is-editor.php:
|
157 |
-
#: ../admin/class-is-editor.php:
|
158 |
-
#: ../admin/class-is-editor.php:
|
159 |
-
#: ../admin/class-is-editor.php:
|
160 |
msgid "Expand All"
|
161 |
msgstr ""
|
162 |
|
163 |
-
#: ../admin/class-is-editor.php:
|
164 |
-
#: ../admin/class-is-editor.php:
|
165 |
-
#: ../admin/class-is-editor.php:
|
166 |
-
#: ../admin/class-is-editor.php:
|
167 |
-
#: ../admin/class-is-editor.php:
|
168 |
-
#: ../admin/class-is-editor.php:
|
169 |
-
#: ../admin/class-is-editor.php:
|
170 |
-
#: ../admin/class-is-editor.php:
|
171 |
-
#: ../admin/class-is-editor.php:
|
172 |
-
#: ../admin/class-is-editor.php:
|
173 |
-
#: ../admin/class-is-editor.php:
|
174 |
-
#: ../admin/class-is-editor.php:
|
175 |
-
#: ../admin/class-is-editor.php:
|
176 |
-
#: ../admin/class-is-editor.php:
|
177 |
-
#: ../admin/class-is-editor.php:
|
178 |
msgid "Collapse All"
|
179 |
msgstr ""
|
180 |
|
181 |
-
#: ../admin/class-is-editor.php:
|
182 |
msgid "Select post types that you want to make searchable."
|
183 |
msgstr ""
|
184 |
|
185 |
-
#: ../admin/class-is-editor.php:
|
186 |
msgid "Search in post title."
|
187 |
msgstr ""
|
188 |
|
189 |
-
#: ../admin/class-is-editor.php:
|
190 |
msgid "Search in post content."
|
191 |
msgstr ""
|
192 |
|
193 |
-
#: ../admin/class-is-editor.php:
|
194 |
msgid "Search in post excerpt."
|
195 |
msgstr ""
|
196 |
|
197 |
-
#: ../admin/class-is-editor.php:
|
198 |
msgid "None"
|
199 |
msgstr ""
|
200 |
|
201 |
-
#: ../admin/class-is-editor.php:
|
202 |
msgid ""
|
203 |
"Display this post type in the search query URL and restrict search to it."
|
204 |
msgstr ""
|
205 |
|
206 |
-
#: ../admin/class-is-editor.php:
|
207 |
msgid "No post types registered on your site."
|
208 |
msgstr ""
|
209 |
|
210 |
-
#: ../admin/class-is-editor.php:
|
211 |
msgid "Posts"
|
212 |
msgstr ""
|
213 |
|
214 |
-
#: ../admin/class-is-editor.php:
|
215 |
msgid "The posts and pages of searchable post types display here."
|
216 |
msgstr ""
|
217 |
|
218 |
-
#: ../admin/class-is-editor.php:
|
219 |
msgid ""
|
220 |
"Select the specific posts you wish to search or do not select any posts to "
|
221 |
"make all posts searchable."
|
222 |
msgstr ""
|
223 |
|
224 |
-
#: ../admin/class-is-editor.php:
|
225 |
msgid "Selected post types display in BOLD."
|
226 |
msgstr ""
|
227 |
|
228 |
-
#: ../admin/class-is-editor.php:
|
229 |
-
#: ../admin/class-is-editor.php:
|
230 |
-
#: ../admin/class-is-editor.php:
|
231 |
-
#: ../admin/class-is-editor.php:
|
232 |
msgid "Search.."
|
233 |
msgstr ""
|
234 |
|
235 |
-
#: ../admin/class-is-editor.php:220 ../admin/class-is-editor.php:
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
|
|
|
|
|
|
|
|
|
|
240 |
msgstr ""
|
241 |
|
242 |
-
#: ../admin/class-is-editor.php:
|
243 |
msgid "Taxonomy Terms"
|
244 |
msgstr ""
|
245 |
|
246 |
-
#: ../admin/class-is-editor.php:
|
247 |
msgid ""
|
248 |
"Taxonomy terms that have no posts will not be visible below. Add a post with "
|
249 |
"the taxonomy you want for it to be configurable."
|
250 |
msgstr ""
|
251 |
|
252 |
-
#: ../admin/class-is-editor.php:
|
253 |
msgid ""
|
254 |
"Terms selected here will restrict the search to posts that have the selected "
|
255 |
"terms."
|
256 |
msgstr ""
|
257 |
|
258 |
-
#: ../admin/class-is-editor.php:
|
259 |
msgid "Taxonomy terms selected display in BOLD"
|
260 |
msgstr ""
|
261 |
|
262 |
-
#: ../admin/class-is-editor.php:
|
263 |
msgid "AND - Search posts having all the above selected terms."
|
264 |
msgstr ""
|
265 |
|
266 |
-
#: ../admin/class-is-editor.php:
|
267 |
msgid "OR - Search posts having any one of the above selected terms."
|
268 |
msgstr ""
|
269 |
|
270 |
-
#: ../admin/class-is-editor.php:
|
271 |
msgid "Search in taxonomy terms title."
|
272 |
msgstr ""
|
273 |
|
274 |
-
#: ../admin/class-is-editor.php:
|
275 |
msgid "Search in taxonomy terms description."
|
276 |
msgstr ""
|
277 |
|
278 |
-
#: ../admin/class-is-editor.php:
|
279 |
msgid "No taxonomies registered for slected post types."
|
280 |
msgstr ""
|
281 |
|
282 |
-
#: ../admin/class-is-editor.php:
|
283 |
msgid "Custom Fields"
|
284 |
msgstr ""
|
285 |
|
286 |
-
#: ../admin/class-is-editor.php:
|
287 |
msgid "Select custom fields to make their values searchable."
|
288 |
msgstr ""
|
289 |
|
290 |
-
#: ../admin/class-is-editor.php:
|
291 |
msgid "Selected Custom Fields :"
|
292 |
msgstr ""
|
293 |
|
294 |
-
#: ../admin/class-is-editor.php:
|
295 |
msgid "WooCommerce"
|
296 |
msgstr ""
|
297 |
|
298 |
-
#: ../admin/class-is-editor.php:
|
299 |
msgid "Configure WooCommerce products search options here."
|
300 |
msgstr ""
|
301 |
|
302 |
-
#: ../admin/class-is-editor.php:
|
303 |
msgid "Search in WooCommerce products SKU."
|
304 |
msgstr ""
|
305 |
|
306 |
-
#: ../admin/class-is-editor.php:
|
|
|
|
|
|
|
|
|
307 |
msgid "WooCommerce product post type is not included in search."
|
308 |
msgstr ""
|
309 |
|
310 |
-
#: ../admin/class-is-editor.php:
|
311 |
msgid "Activate WooCommerce plugin to use this option."
|
312 |
msgstr ""
|
313 |
|
314 |
-
#: ../admin/class-is-editor.php:
|
315 |
msgid "Authors"
|
316 |
msgstr ""
|
317 |
|
318 |
-
#: ../admin/class-is-editor.php:
|
319 |
msgid "Make specific author posts searchable."
|
320 |
msgstr ""
|
321 |
|
322 |
-
#: ../admin/class-is-editor.php:
|
323 |
msgid ""
|
324 |
"Search has been already limited by excluding specific authors posts in the "
|
325 |
"Excludes section."
|
326 |
msgstr ""
|
327 |
|
328 |
-
#: ../admin/class-is-editor.php:
|
329 |
msgid ""
|
330 |
"Search in author Display name and display the posts created by that author."
|
331 |
msgstr ""
|
332 |
|
333 |
-
#: ../admin/class-is-editor.php:
|
334 |
msgid "Post Status"
|
335 |
msgstr ""
|
336 |
|
337 |
-
#: ../admin/class-is-editor.php:
|
338 |
msgid "Configure options to search posts having specific post statuses."
|
339 |
msgstr ""
|
340 |
|
341 |
-
#: ../admin/class-is-editor.php:
|
342 |
msgid ""
|
343 |
"Search has been already limited by excluding specific posts statuses from "
|
344 |
"search in the Excludes section."
|
345 |
msgstr ""
|
346 |
|
347 |
-
#: ../admin/class-is-editor.php:
|
348 |
msgid "Comments"
|
349 |
msgstr ""
|
350 |
|
351 |
-
#: ../admin/class-is-editor.php:
|
352 |
msgid "Make posts searchable that have a specific number of comments."
|
353 |
msgstr ""
|
354 |
|
355 |
-
#: ../admin/class-is-editor.php:
|
356 |
msgid "The search operator to compare comments count."
|
357 |
msgstr ""
|
358 |
|
359 |
-
#: ../admin/class-is-editor.php:
|
360 |
msgid "NA"
|
361 |
msgstr ""
|
362 |
|
363 |
-
#: ../admin/class-is-editor.php:
|
364 |
msgid "The amount of comments your posts has to have."
|
365 |
msgstr ""
|
366 |
|
367 |
-
#: ../admin/class-is-editor.php:
|
368 |
msgid "Search in approved comments content."
|
369 |
msgstr ""
|
370 |
|
371 |
-
#: ../admin/class-is-editor.php:
|
372 |
msgid "Date"
|
373 |
msgstr ""
|
374 |
|
375 |
-
#: ../admin/class-is-editor.php:
|
376 |
msgid "Make posts searchable that were created in the specified date range."
|
377 |
msgstr ""
|
378 |
|
379 |
-
#: ../admin/class-is-editor.php:
|
380 |
msgid "Day"
|
381 |
msgstr ""
|
382 |
|
383 |
-
#: ../admin/class-is-editor.php:
|
384 |
msgid "Month"
|
385 |
msgstr ""
|
386 |
|
387 |
-
#: ../admin/class-is-editor.php:
|
388 |
msgid "Year"
|
389 |
msgstr ""
|
390 |
|
391 |
-
#: ../admin/class-is-editor.php:
|
392 |
msgid "Password"
|
393 |
msgstr ""
|
394 |
|
395 |
-
#: ../admin/class-is-editor.php:
|
396 |
msgid "Configure options to search posts with or without password."
|
397 |
msgstr ""
|
398 |
|
399 |
-
#: ../admin/class-is-editor.php:
|
400 |
msgid "Search all posts with and without passwords."
|
401 |
msgstr ""
|
402 |
|
403 |
-
#: ../admin/class-is-editor.php:
|
404 |
msgid "Search only posts with passwords."
|
405 |
msgstr ""
|
406 |
|
407 |
-
#: ../admin/class-is-editor.php:
|
408 |
msgid "Search only posts without passwords."
|
409 |
msgstr ""
|
410 |
|
411 |
-
#: ../admin/class-is-editor.php:
|
412 |
msgid "File Types"
|
413 |
msgstr ""
|
414 |
|
415 |
-
#: ../admin/class-is-editor.php:
|
416 |
msgid ""
|
417 |
"Configure searching to search based on posts that have a specific MIME type "
|
418 |
"or files that have specific media attachments"
|
419 |
msgstr ""
|
420 |
|
421 |
-
#: ../admin/class-is-editor.php:
|
422 |
msgid ""
|
423 |
"Search has been already limited by excluding specific File type in the "
|
424 |
"Excludes section."
|
425 |
msgstr ""
|
426 |
|
427 |
-
#: ../admin/class-is-editor.php:
|
428 |
msgid "Attachment post type is not included in search."
|
429 |
msgstr ""
|
430 |
|
431 |
-
#: ../admin/class-is-editor.php:
|
432 |
msgid "Selected File Types :"
|
433 |
msgstr ""
|
434 |
|
435 |
-
#: ../admin/class-is-editor.php:
|
436 |
msgid "Configure the options to exclude specific content from search."
|
437 |
msgstr ""
|
438 |
|
439 |
-
#: ../admin/class-is-editor.php:
|
440 |
msgid "Select the posts you wish to exclude from the search."
|
441 |
msgstr ""
|
442 |
|
443 |
-
#: ../admin/class-is-editor.php:
|
444 |
msgid ""
|
445 |
"Search is already limited to specific posts selected in Includes section."
|
446 |
msgstr ""
|
447 |
|
448 |
-
#: ../admin/class-is-editor.php:
|
449 |
msgid ""
|
450 |
"The taxonomies and terms attached to searchable post types display here."
|
451 |
msgstr ""
|
452 |
|
453 |
-
#: ../admin/class-is-editor.php:
|
454 |
msgid "Exclude posts from search results that have specific terms"
|
455 |
msgstr ""
|
456 |
|
457 |
-
#: ../admin/class-is-editor.php:
|
458 |
msgid "Selected terms taxonomy title display in BOLD."
|
459 |
msgstr ""
|
460 |
|
461 |
-
#: ../admin/class-is-editor.php:
|
462 |
msgid "Exclude posts from the search having selected custom fields."
|
463 |
msgstr ""
|
464 |
|
465 |
-
#: ../admin/class-is-editor.php:
|
466 |
msgid "Excluded Custom Fields :"
|
467 |
msgstr ""
|
468 |
|
469 |
-
#: ../admin/class-is-editor.php:
|
470 |
msgid "Exclude specific WooCommerce products from the search."
|
471 |
msgstr ""
|
472 |
|
473 |
-
#: ../admin/class-is-editor.php:
|
474 |
msgid "Exclude 'out of stock' WooCommerce products."
|
475 |
msgstr ""
|
476 |
|
477 |
-
#: ../admin/class-is-editor.php:
|
478 |
msgid "Exclude posts from the search created by slected authors."
|
479 |
msgstr ""
|
480 |
|
481 |
-
#: ../admin/class-is-editor.php:
|
482 |
msgid ""
|
483 |
"Search has been already limited to posts created by specific authors in the "
|
484 |
"Includes section."
|
485 |
msgstr ""
|
486 |
|
487 |
-
#: ../admin/class-is-editor.php:
|
488 |
msgid "Exclude posts from the search having selected post statuses."
|
489 |
msgstr ""
|
490 |
|
491 |
-
#: ../admin/class-is-editor.php:
|
492 |
msgid ""
|
493 |
"Search has been already limited to posts statuses set in the Includes "
|
494 |
"section."
|
495 |
msgstr ""
|
496 |
|
497 |
-
#: ../admin/class-is-editor.php:
|
498 |
msgid "Exclude sticky posts from search."
|
499 |
msgstr ""
|
500 |
|
501 |
-
#: ../admin/class-is-editor.php:
|
502 |
msgid ""
|
503 |
"Exclude posts specially media attachment posts from the search having "
|
504 |
"selected file types."
|
505 |
msgstr ""
|
506 |
|
507 |
-
#: ../admin/class-is-editor.php:
|
508 |
msgid ""
|
509 |
"Search has been already limited to specific File type set in the Includes "
|
510 |
"section."
|
511 |
msgstr ""
|
512 |
|
513 |
-
#: ../admin/class-is-editor.php:
|
514 |
msgid "Excluded File Types :"
|
515 |
msgstr ""
|
516 |
|
517 |
-
#: ../admin/class-is-editor.php:
|
518 |
msgid "Configure the options here to control search of this search form."
|
519 |
msgstr ""
|
520 |
|
521 |
-
#: ../admin/class-is-editor.php:
|
522 |
msgid "Posts Per Page"
|
523 |
msgstr ""
|
524 |
|
525 |
-
#: ../admin/class-is-editor.php:
|
526 |
msgid "Number of posts to display on search results page."
|
527 |
msgstr ""
|
528 |
|
529 |
-
#: ../admin/class-is-editor.php:
|
530 |
msgid "Order By"
|
531 |
msgstr ""
|
532 |
|
533 |
-
#: ../admin/class-is-editor.php:
|
534 |
msgid "Highlight Terms"
|
535 |
msgstr ""
|
536 |
|
537 |
-
#: ../admin/class-is-editor.php:
|
538 |
msgid "Highlight searched terms on search results page."
|
539 |
msgstr ""
|
540 |
|
541 |
-
#: ../admin/class-is-editor.php:
|
542 |
msgid "Set highlight color."
|
543 |
msgstr ""
|
544 |
|
545 |
-
#: ../admin/class-is-editor.php:
|
546 |
msgid "Search Terms Relation"
|
547 |
msgstr ""
|
548 |
|
549 |
-
#: ../admin/class-is-editor.php:
|
550 |
msgid "OR - Display content having any of the searched terms."
|
551 |
msgstr ""
|
552 |
|
553 |
-
#: ../admin/class-is-editor.php:
|
554 |
msgid "AND - Display content having all the searched terms."
|
555 |
msgstr ""
|
556 |
|
557 |
-
#: ../admin/class-is-editor.php:
|
558 |
msgid "Fuzzy Matching"
|
559 |
msgstr ""
|
560 |
|
561 |
-
#: ../admin/class-is-editor.php:
|
562 |
msgid "Whole - Search posts that include the whole search term."
|
563 |
msgstr ""
|
564 |
|
565 |
-
#: ../admin/class-is-editor.php:
|
566 |
msgid ""
|
567 |
"Partial - Also search words in the posts that begins or ends with the search "
|
568 |
"term."
|
569 |
msgstr ""
|
570 |
|
571 |
-
#: ../admin/class-is-editor.php:
|
572 |
msgid "Keyword Stemming"
|
573 |
msgstr ""
|
574 |
|
575 |
-
#: ../admin/class-is-editor.php:
|
576 |
msgid "Searches the base word of a searched keyword"
|
577 |
msgstr ""
|
578 |
|
579 |
-
#: ../admin/class-is-editor.php:
|
580 |
msgid ""
|
581 |
"For Example: If you search \"doing\" then it also searches base word of "
|
582 |
"\"doing\" that is \"do\" in the specified post types."
|
583 |
msgstr ""
|
584 |
|
585 |
-
#: ../admin/class-is-editor.php:
|
586 |
msgid ""
|
587 |
"If you want to search whole exact searched term then do not use this options "
|
588 |
"and in this case it is not recommended to use when Fuzzy Matching option is "
|
589 |
"set to Whole."
|
590 |
msgstr ""
|
591 |
|
592 |
-
#: ../admin/class-is-editor.php:
|
593 |
msgid "Also search base word of searched keyword."
|
594 |
msgstr ""
|
595 |
|
596 |
-
#: ../admin/class-is-editor.php:
|
597 |
msgid "Not recommended to use when Fuzzy Matching option is set to Whole."
|
598 |
msgstr ""
|
599 |
|
600 |
-
#: ../admin/class-is-editor.php:
|
601 |
msgid "Sticky Posts"
|
602 |
msgstr ""
|
603 |
|
604 |
-
#: ../admin/class-is-editor.php:
|
605 |
msgid "Move sticky posts to the start of the search results page."
|
606 |
msgstr ""
|
607 |
|
608 |
-
#: ../admin/class-is-editor.php:
|
609 |
msgid "Empty Search"
|
610 |
msgstr ""
|
611 |
|
612 |
-
#: ../admin/class-is-editor.php:
|
613 |
msgid "Display an error for empty search query."
|
614 |
msgstr ""
|
615 |
|
616 |
-
#: ../admin/class-is-editor.php:
|
617 |
msgid "Respect exclude_from_search"
|
618 |
msgstr ""
|
619 |
|
620 |
-
#: ../admin/class-is-editor.php:
|
621 |
msgid "Do not search post types which are excluded from search."
|
622 |
msgstr ""
|
623 |
|
624 |
-
#: ../admin/class-is-editor.php:
|
625 |
msgid "Demo"
|
626 |
msgstr ""
|
627 |
|
628 |
-
#: ../admin/class-is-editor.php:
|
629 |
msgid "Display search form only for site administrator."
|
630 |
msgstr ""
|
631 |
|
632 |
-
#: ../admin/class-is-editor.php:
|
633 |
msgid "Disable"
|
634 |
msgstr ""
|
635 |
|
636 |
-
#: ../admin/class-is-editor.php:
|
637 |
msgid "Disable this search form."
|
638 |
msgstr ""
|
639 |
|
@@ -646,15 +658,15 @@ msgstr ""
|
|
646 |
msgid "Available Actions"
|
647 |
msgstr ""
|
648 |
|
649 |
-
#: ../admin/class-is-help.php:35 ../admin/partials/
|
650 |
msgid "Includes"
|
651 |
msgstr ""
|
652 |
|
653 |
-
#: ../admin/class-is-help.php:40 ../admin/partials/
|
654 |
msgid "Excludes"
|
655 |
msgstr ""
|
656 |
|
657 |
-
#: ../admin/class-is-help.php:45 ../admin/partials/
|
658 |
msgid "Options"
|
659 |
msgstr ""
|
660 |
|
@@ -777,13 +789,13 @@ msgstr ""
|
|
777 |
msgid "For more information:"
|
778 |
msgstr ""
|
779 |
|
780 |
-
#: ../admin/class-is-help.php:110 ../admin/partials/
|
781 |
-
#: ../admin/partials/settings-form.php:
|
782 |
msgid "Docs"
|
783 |
msgstr ""
|
784 |
|
785 |
-
#: ../admin/class-is-help.php:112 ../admin/partials/
|
786 |
-
#: ../admin/partials/settings-form.php:
|
787 |
msgid "Give us a rating"
|
788 |
msgstr ""
|
789 |
|
@@ -800,7 +812,7 @@ msgid "Author"
|
|
800 |
msgstr ""
|
801 |
|
802 |
#: ../admin/class-is-list-table.php:111 ../admin/class-is-list-table.php:174
|
803 |
-
#: ../admin/partials/
|
804 |
msgid "Delete"
|
805 |
msgstr ""
|
806 |
|
@@ -810,19 +822,17 @@ msgid "Edit “%s”"
|
|
810 |
msgstr ""
|
811 |
|
812 |
#: ../admin/class-is-list-table.php:150
|
813 |
-
#: ../admin/class-is-settings-fields.php:
|
814 |
-
#: ../admin/class-is-settings-fields.php:
|
815 |
-
#: ../admin/class-is-settings-fields.php:
|
816 |
msgid "Edit"
|
817 |
msgstr ""
|
818 |
|
819 |
-
#: ../admin/class-is-list-table.php:160
|
820 |
-
#: ../admin/partials/new-search-form.php:169
|
821 |
msgid "Duplicate"
|
822 |
msgstr ""
|
823 |
|
824 |
-
#: ../admin/class-is-list-table.php:173
|
825 |
-
#: ../admin/partials/new-search-form.php:154
|
826 |
msgid ""
|
827 |
"You are about to delete this search form.\n"
|
828 |
" 'Cancel' to stop, 'OK' to delete."
|
@@ -841,311 +851,305 @@ msgstr ""
|
|
841 |
msgid "d/m/Y"
|
842 |
msgstr ""
|
843 |
|
844 |
-
#: ../admin/class-is-settings-fields.php:
|
845 |
msgid "Select Menu"
|
846 |
msgstr ""
|
847 |
|
848 |
-
#: ../admin/class-is-settings-fields.php:
|
849 |
#: ../includes/class-is-search-form.php:60
|
850 |
msgid "Search Form"
|
851 |
msgstr ""
|
852 |
|
853 |
-
#: ../admin/class-is-settings-fields.php:
|
854 |
msgid "Form Style"
|
855 |
msgstr ""
|
856 |
|
857 |
-
#: ../admin/class-is-settings-fields.php:
|
858 |
msgid "Menu Title"
|
859 |
msgstr ""
|
860 |
|
861 |
-
#: ../admin/class-is-settings-fields.php:
|
862 |
msgid "Menu Classes"
|
863 |
msgstr ""
|
864 |
|
865 |
-
#: ../admin/class-is-settings-fields.php:
|
866 |
msgid "Google CSE"
|
867 |
msgstr ""
|
868 |
|
869 |
-
#: ../admin/class-is-settings-fields.php:
|
870 |
msgid "Close Icon"
|
871 |
msgstr ""
|
872 |
|
873 |
-
#: ../admin/class-is-settings-fields.php:
|
874 |
msgid "Header"
|
875 |
msgstr ""
|
876 |
|
877 |
-
#: ../admin/class-is-settings-fields.php:
|
878 |
msgid "Footer"
|
879 |
msgstr ""
|
880 |
|
881 |
-
#: ../admin/class-is-settings-fields.php:
|
882 |
msgid "Mobile Display"
|
883 |
msgstr ""
|
884 |
|
885 |
-
#: ../admin/class-is-settings-fields.php:
|
886 |
msgid "Custom CSS"
|
887 |
msgstr ""
|
888 |
|
889 |
-
#: ../admin/class-is-settings-fields.php:
|
890 |
msgid "Stopwords"
|
891 |
msgstr ""
|
892 |
|
893 |
-
#: ../admin/class-is-settings-fields.php:
|
894 |
msgid "Synonyms"
|
895 |
msgstr ""
|
896 |
|
897 |
-
#: ../admin/class-is-settings-fields.php:
|
898 |
msgid "Not load files"
|
899 |
msgstr ""
|
900 |
|
901 |
-
#: ../admin/class-is-settings-fields.php:
|
902 |
msgid "Default Search"
|
903 |
msgstr ""
|
904 |
|
905 |
-
#: ../admin/class-is-settings-fields.php:
|
906 |
msgid "Use below options to display search in menu and configure it."
|
907 |
msgstr ""
|
908 |
|
909 |
-
#: ../admin/class-is-settings-fields.php:
|
910 |
msgid "Use below options to make sitewide changes in search."
|
911 |
msgstr ""
|
912 |
|
913 |
-
#: ../admin/class-is-settings-fields.php:
|
914 |
msgid "Select menu here where you want to display search form."
|
915 |
msgstr ""
|
916 |
|
917 |
-
#: ../admin/class-is-settings-fields.php:
|
918 |
msgid "No navigation menu registered on your site."
|
919 |
msgstr ""
|
920 |
|
921 |
-
#: ../admin/class-is-settings-fields.php:
|
922 |
msgid ""
|
923 |
"Select search form that will control search performed using menu search."
|
924 |
msgstr ""
|
925 |
|
926 |
-
#: ../admin/class-is-settings-fields.php:
|
927 |
-
|
928 |
-
|
929 |
-
|
930 |
-
#: ../admin/class-is-settings-fields.php:240
|
931 |
-
#: ../admin/class-is-settings-fields.php:411
|
932 |
-
#: ../admin/class-is-settings-fields.php:443 ../includes/class-is-widget.php:71
|
933 |
msgid "Create New"
|
934 |
msgstr ""
|
935 |
|
936 |
-
#: ../admin/class-is-settings-fields.php:
|
937 |
msgid "Select form style for the search form displayed in the menu."
|
938 |
msgstr ""
|
939 |
|
940 |
-
#: ../admin/class-is-settings-fields.php:
|
941 |
msgid "Default"
|
942 |
msgstr ""
|
943 |
|
944 |
-
#: ../admin/class-is-settings-fields.php:
|
945 |
msgid "Dropdown"
|
946 |
msgstr ""
|
947 |
|
948 |
-
#: ../admin/class-is-settings-fields.php:
|
949 |
msgid "Sliding"
|
950 |
msgstr ""
|
951 |
|
952 |
-
#: ../admin/class-is-settings-fields.php:
|
953 |
msgid "Full Width"
|
954 |
msgstr ""
|
955 |
|
956 |
-
#: ../admin/class-is-settings-fields.php:
|
957 |
msgid "Popup"
|
958 |
msgstr ""
|
959 |
|
960 |
-
#: ../admin/class-is-settings-fields.php:
|
961 |
msgid ""
|
962 |
"Displays set menu title text in place of search icon displays in navigation "
|
963 |
"menu."
|
964 |
msgstr ""
|
965 |
|
966 |
-
#: ../admin/class-is-settings-fields.php:
|
967 |
msgid "Adds set classes in the search navigation menu item."
|
968 |
msgstr ""
|
969 |
|
970 |
-
#: ../admin/class-is-settings-fields.php:
|
971 |
msgid "Add classes seperated by space."
|
972 |
msgstr ""
|
973 |
|
974 |
-
#: ../admin/class-is-settings-fields.php:
|
975 |
msgid ""
|
976 |
"Add only Google Custom Search( CSE ) search form code in the above text box "
|
977 |
"that will replace default search form."
|
978 |
msgstr ""
|
979 |
|
980 |
-
#: ../admin/class-is-settings-fields.php:
|
981 |
-
msgid ""
|
982 |
-
"Note: Does not work with caching as this functionality uses the WordPress "
|
983 |
-
"wp_is_mobile function."
|
984 |
-
msgstr ""
|
985 |
-
|
986 |
-
#: ../admin/class-is-settings-fields.php:343
|
987 |
-
msgid "Display search form in header on mobile devices"
|
988 |
msgstr ""
|
989 |
|
990 |
-
#: ../admin/class-is-settings-fields.php:
|
991 |
-
msgid ""
|
992 |
-
"Use this option to display search form in your site header and hide the "
|
993 |
-
"search form on desktop using CSS code."
|
994 |
msgstr ""
|
995 |
|
996 |
-
#: ../admin/class-is-settings-fields.php:
|
997 |
-
|
|
|
998 |
msgstr ""
|
999 |
|
1000 |
-
#: ../admin/class-is-settings-fields.php:
|
1001 |
-
msgid "
|
1002 |
msgstr ""
|
1003 |
|
1004 |
-
#: ../admin/class-is-settings-fields.php:
|
1005 |
msgid ""
|
1006 |
-
"
|
1007 |
-
"
|
1008 |
-
msgstr ""
|
1009 |
-
|
1010 |
-
#: ../admin/class-is-settings-fields.php:390
|
1011 |
-
msgid "Displays search form in site header using wp_head hook."
|
1012 |
msgstr ""
|
1013 |
|
1014 |
-
#: ../admin/class-is-settings-fields.php:
|
1015 |
-
|
1016 |
-
msgid "none"
|
1017 |
msgstr ""
|
1018 |
|
1019 |
-
#: ../admin/class-is-settings-fields.php:
|
1020 |
-
msgid "
|
|
|
|
|
1021 |
msgstr ""
|
1022 |
|
1023 |
-
#: ../admin/class-is-settings-fields.php:
|
1024 |
-
msgid "
|
1025 |
msgstr ""
|
1026 |
|
1027 |
-
#: ../admin/class-is-settings-fields.php:
|
1028 |
msgid "Add custom css code if any to style search form."
|
1029 |
msgstr ""
|
1030 |
|
1031 |
-
#: ../admin/class-is-settings-fields.php:
|
1032 |
msgid ""
|
1033 |
"Enter words here to add them to the list of stopwords. The stopwords will "
|
1034 |
"not be searched."
|
1035 |
msgstr ""
|
1036 |
|
1037 |
-
#: ../admin/class-is-settings-fields.php:
|
1038 |
msgid "This works with search form."
|
1039 |
msgstr ""
|
1040 |
|
1041 |
-
#: ../admin/class-is-settings-fields.php:
|
1042 |
msgid "Please separate words with commas."
|
1043 |
msgstr ""
|
1044 |
|
1045 |
-
#: ../admin/class-is-settings-fields.php:
|
1046 |
msgid "Add synonyms here to make the searches find better results."
|
1047 |
msgstr ""
|
1048 |
|
1049 |
-
#: ../admin/class-is-settings-fields.php:
|
1050 |
msgid ""
|
1051 |
"If you add bird = crow to the list of synonyms, searches for bird "
|
1052 |
"automatically become a search for bird crow and will thus match to posts "
|
1053 |
"that include either bird or crow."
|
1054 |
msgstr ""
|
1055 |
|
1056 |
-
#: ../admin/class-is-settings-fields.php:
|
1057 |
msgid ""
|
1058 |
"This only works for search forms and in OR searches. In AND searches the "
|
1059 |
"synonyms only restrict the search, as now the search only finds posts that "
|
1060 |
"contain both bird and crow."
|
1061 |
msgstr ""
|
1062 |
|
1063 |
-
#: ../admin/class-is-settings-fields.php:
|
1064 |
msgid ""
|
1065 |
"The format here is key = value;. Please separate every synonyms key = value "
|
1066 |
"pairs with semicolon."
|
1067 |
msgstr ""
|
1068 |
|
1069 |
-
#: ../admin/class-is-settings-fields.php:
|
1070 |
msgid "Disable synonyms for the search forms having AND search terms relation."
|
1071 |
msgstr ""
|
1072 |
|
1073 |
-
#: ../admin/class-is-settings-fields.php:
|
1074 |
msgid "Configure to disable loading plugin CSS and JavaScript files."
|
1075 |
msgstr ""
|
1076 |
|
1077 |
-
#: ../admin/class-is-settings-fields.php:
|
1078 |
msgid "Plugin CSS File"
|
1079 |
msgstr ""
|
1080 |
|
1081 |
-
#: ../admin/class-is-settings-fields.php:
|
1082 |
msgid "Plugin JavaScript File"
|
1083 |
msgstr ""
|
1084 |
|
1085 |
-
#: ../admin/class-is-settings-fields.php:
|
1086 |
msgid ""
|
1087 |
"If checked, you have to add following plugin file code into your child theme "
|
1088 |
"CSS file."
|
1089 |
msgstr ""
|
1090 |
|
1091 |
-
#: ../admin/class-is-settings-fields.php:
|
1092 |
msgid ""
|
1093 |
"If checked, you have to add following plugin files code into your child "
|
1094 |
"theme JavaScript file."
|
1095 |
msgstr ""
|
1096 |
|
1097 |
-
#: ../admin/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1098 |
msgid "Edit Search Form"
|
1099 |
msgstr ""
|
1100 |
|
1101 |
-
#: ../admin/partials/
|
1102 |
msgid "Enter search form name"
|
1103 |
msgstr ""
|
1104 |
|
1105 |
-
#: ../admin/partials/
|
1106 |
msgid "Enter search form name."
|
1107 |
msgstr ""
|
1108 |
|
1109 |
-
#: ../admin/partials/
|
1110 |
msgid "Editing title of Default Search Form is prohibited."
|
1111 |
msgstr ""
|
1112 |
|
1113 |
-
#: ../admin/partials/
|
1114 |
msgid ""
|
1115 |
"Copy this shortcode and paste it into your post, page, or text widget "
|
1116 |
"content:"
|
1117 |
msgstr ""
|
1118 |
|
1119 |
-
#: ../admin/partials/
|
1120 |
msgid "Save"
|
1121 |
msgstr ""
|
1122 |
|
1123 |
-
#: ../admin/partials/
|
1124 |
msgid "Reset"
|
1125 |
msgstr ""
|
1126 |
|
1127 |
-
#: ../admin/partials/
|
1128 |
msgid ""
|
1129 |
"You are about to reset this search form.\n"
|
1130 |
" 'Cancel' to stop, 'OK' to reset."
|
1131 |
msgstr ""
|
1132 |
|
1133 |
-
#: ../admin/partials/
|
1134 |
-
#: ../admin/partials/settings-form.php:87
|
1135 |
msgid "Information"
|
1136 |
msgstr ""
|
1137 |
|
1138 |
-
#: ../admin/partials/
|
1139 |
-
#: ../admin/partials/settings-form.php:92
|
1140 |
msgid "Contact"
|
1141 |
msgstr ""
|
1142 |
|
1143 |
#: ../includes/class-is-search-form.php:111
|
1144 |
-
#: ../includes/class-is-search-form.php:
|
1145 |
msgid "Untitled"
|
1146 |
msgstr ""
|
1147 |
|
1148 |
-
#: ../includes/class-is-search-form.php:
|
1149 |
#, php-format
|
1150 |
msgid ""
|
1151 |
"<code>%1$s</code> property of a <code>IS_Search_Form</code> object is "
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Ivory Search\n"
|
4 |
+
"POT-Creation-Date: 2018-11-29 20:10+0530\n"
|
5 |
+
"PO-Revision-Date: 2018-11-29 20:10+0530\n"
|
6 |
"Last-Translator: \n"
|
7 |
"Language-Team: Ivory Search <admin@ivorysearch.com>\n"
|
8 |
"Language: en_US\n"
|
16 |
"X-Poedit-SourceCharset: UTF-8\n"
|
17 |
"X-Poedit-SearchPath-0: ..\n"
|
18 |
|
19 |
+
#: ../admin/class-is-admin.php:72
|
20 |
msgid "The changes you made will be lost if you navigate away from this page."
|
21 |
msgstr ""
|
22 |
|
23 |
+
#: ../admin/class-is-admin.php:92 ../admin/class-is-help.php:111
|
24 |
+
#: ../admin/partials/search-form.php:188 ../admin/partials/settings-form.php:98
|
|
|
25 |
msgid "Support"
|
26 |
msgstr ""
|
27 |
|
28 |
+
#: ../admin/class-is-admin.php:114
|
29 |
#, php-format
|
30 |
msgid ""
|
31 |
"To configure <em>Ivory Search plugin</em> please visit its <a href=\"%1$s"
|
34 |
"target=\"_blank\">contact us page</a>."
|
35 |
msgstr ""
|
36 |
|
37 |
+
#: ../admin/class-is-admin.php:160
|
38 |
+
msgid "No posts found"
|
39 |
+
msgstr ""
|
40 |
+
|
41 |
+
#: ../admin/class-is-admin.php:258
|
42 |
msgid "Search form created."
|
43 |
msgstr ""
|
44 |
|
45 |
+
#: ../admin/class-is-admin.php:260
|
46 |
msgid "Search form saved."
|
47 |
msgstr ""
|
48 |
|
49 |
+
#: ../admin/class-is-admin.php:262
|
50 |
msgid "Search form deleted."
|
51 |
msgstr ""
|
52 |
|
53 |
+
#: ../admin/class-is-admin.php:264
|
54 |
msgid "Search form reset."
|
55 |
msgstr ""
|
56 |
|
57 |
+
#: ../admin/class-is-admin.php:273
|
58 |
msgid "There was an error saving the search form."
|
59 |
msgstr ""
|
60 |
|
61 |
+
#: ../admin/class-is-admin.php:281
|
62 |
msgid "There was a validation error saving the search form."
|
63 |
msgstr ""
|
64 |
|
65 |
+
#: ../admin/class-is-admin.php:283
|
66 |
#, php-format
|
67 |
msgid ""
|
68 |
"Please make sure you have not selected similar %s fields in the search form "
|
69 |
"Includes and Excludes sections."
|
70 |
msgstr ""
|
71 |
|
72 |
+
#: ../admin/class-is-admin.php:293 ../includes/class-is-widget.php:13
|
73 |
#: ../includes/class-is-widget.php:45
|
74 |
msgid "Ivory Search"
|
75 |
msgstr ""
|
76 |
|
77 |
+
#: ../admin/class-is-admin.php:295 ../admin/class-is-admin.php:333
|
78 |
#: ../includes/class-is-search-form.php:59
|
79 |
msgid "Search Forms"
|
80 |
msgstr ""
|
81 |
|
82 |
+
#: ../admin/class-is-admin.php:298 ../admin/partials/search-form.php:21
|
83 |
msgid "Add New Search Form"
|
84 |
msgstr ""
|
85 |
|
86 |
+
#: ../admin/class-is-admin.php:298 ../admin/class-is-admin.php:340
|
87 |
+
#: ../admin/partials/search-form.php:31
|
88 |
msgid "Add New"
|
89 |
msgstr ""
|
90 |
|
91 |
+
#: ../admin/class-is-admin.php:301 ../admin/partials/settings-form.php:20
|
92 |
msgid "Ivory Search Settings"
|
93 |
msgstr ""
|
94 |
|
95 |
+
#: ../admin/class-is-admin.php:301 ../admin/class-is-help.php:64
|
96 |
msgid "Settings"
|
97 |
msgstr ""
|
98 |
|
99 |
+
#: ../admin/class-is-admin.php:346
|
100 |
#, php-format
|
101 |
msgid "Search results for “%s”"
|
102 |
msgstr ""
|
103 |
|
104 |
+
#: ../admin/class-is-admin.php:357
|
105 |
msgid "Search Search Forms"
|
106 |
msgstr ""
|
107 |
|
108 |
+
#: ../admin/class-is-admin.php:401
|
109 |
msgid "You are not allowed to edit this item."
|
110 |
msgstr ""
|
111 |
|
112 |
+
#: ../admin/class-is-admin.php:483
|
113 |
msgid "You are not allowed to reset this item."
|
114 |
msgstr ""
|
115 |
|
116 |
+
#: ../admin/class-is-admin.php:517
|
117 |
msgid "You are not allowed to copy this item."
|
118 |
msgstr ""
|
119 |
|
120 |
+
#: ../admin/class-is-admin.php:558
|
121 |
msgid "You are not allowed to delete this item."
|
122 |
msgstr ""
|
123 |
|
124 |
+
#: ../admin/class-is-admin.php:562
|
125 |
msgid "Error in deleting."
|
126 |
msgstr ""
|
127 |
|
128 |
+
#: ../admin/class-is-admin.php:774
|
129 |
msgid "Save Form"
|
130 |
msgstr ""
|
131 |
|
132 |
+
#: ../admin/class-is-admin.php:786
|
133 |
msgid "Upgrade To Access"
|
134 |
msgstr ""
|
135 |
|
136 |
+
#: ../admin/class-is-admin.php:793
|
137 |
msgid "Install Pro Version To Access"
|
138 |
msgstr ""
|
139 |
|
140 |
+
#: ../admin/class-is-editor.php:99
|
141 |
msgid "Configure the below options to make specific content searchable."
|
142 |
msgstr ""
|
143 |
|
144 |
+
#: ../admin/class-is-editor.php:107
|
145 |
msgid "Post Types"
|
146 |
msgstr ""
|
147 |
|
148 |
+
#: ../admin/class-is-editor.php:108 ../admin/class-is-editor.php:177
|
149 |
+
#: ../admin/class-is-editor.php:235 ../admin/class-is-editor.php:313
|
150 |
+
#: ../admin/class-is-editor.php:349 ../admin/class-is-editor.php:391
|
151 |
+
#: ../admin/class-is-editor.php:444 ../admin/class-is-editor.php:479
|
152 |
+
#: ../admin/class-is-editor.php:530 ../admin/class-is-editor.php:583
|
153 |
+
#: ../admin/class-is-editor.php:609 ../admin/class-is-editor.php:675
|
154 |
+
#: ../admin/class-is-editor.php:739 ../admin/class-is-editor.php:785
|
155 |
+
#: ../admin/class-is-editor.php:823 ../admin/class-is-editor.php:855
|
156 |
+
#: ../admin/class-is-editor.php:901 ../admin/class-is-editor.php:946
|
157 |
+
#: ../admin/class-is-editor.php:1008 ../admin/class-is-editor.php:1027
|
158 |
+
#: ../admin/class-is-editor.php:1063 ../admin/class-is-editor.php:1088
|
159 |
+
#: ../admin/class-is-editor.php:1106 ../admin/class-is-editor.php:1123
|
160 |
+
#: ../admin/class-is-editor.php:1146 ../admin/class-is-editor.php:1161
|
161 |
+
#: ../admin/class-is-editor.php:1176 ../admin/class-is-editor.php:1191
|
162 |
+
#: ../admin/class-is-editor.php:1206 ../admin/class-is-settings-fields.php:117
|
163 |
msgid "Expand All"
|
164 |
msgstr ""
|
165 |
|
166 |
+
#: ../admin/class-is-editor.php:108 ../admin/class-is-editor.php:177
|
167 |
+
#: ../admin/class-is-editor.php:235 ../admin/class-is-editor.php:313
|
168 |
+
#: ../admin/class-is-editor.php:349 ../admin/class-is-editor.php:391
|
169 |
+
#: ../admin/class-is-editor.php:444 ../admin/class-is-editor.php:479
|
170 |
+
#: ../admin/class-is-editor.php:530 ../admin/class-is-editor.php:583
|
171 |
+
#: ../admin/class-is-editor.php:609 ../admin/class-is-editor.php:675
|
172 |
+
#: ../admin/class-is-editor.php:739 ../admin/class-is-editor.php:785
|
173 |
+
#: ../admin/class-is-editor.php:823 ../admin/class-is-editor.php:855
|
174 |
+
#: ../admin/class-is-editor.php:901 ../admin/class-is-editor.php:946
|
175 |
+
#: ../admin/class-is-editor.php:1008 ../admin/class-is-editor.php:1027
|
176 |
+
#: ../admin/class-is-editor.php:1063 ../admin/class-is-editor.php:1088
|
177 |
+
#: ../admin/class-is-editor.php:1106 ../admin/class-is-editor.php:1123
|
178 |
+
#: ../admin/class-is-editor.php:1146 ../admin/class-is-editor.php:1161
|
179 |
+
#: ../admin/class-is-editor.php:1176 ../admin/class-is-editor.php:1191
|
180 |
+
#: ../admin/class-is-editor.php:1206 ../admin/class-is-settings-fields.php:117
|
181 |
msgid "Collapse All"
|
182 |
msgstr ""
|
183 |
|
184 |
+
#: ../admin/class-is-editor.php:113
|
185 |
msgid "Select post types that you want to make searchable."
|
186 |
msgstr ""
|
187 |
|
188 |
+
#: ../admin/class-is-editor.php:142
|
189 |
msgid "Search in post title."
|
190 |
msgstr ""
|
191 |
|
192 |
+
#: ../admin/class-is-editor.php:148
|
193 |
msgid "Search in post content."
|
194 |
msgstr ""
|
195 |
|
196 |
+
#: ../admin/class-is-editor.php:154
|
197 |
msgid "Search in post excerpt."
|
198 |
msgstr ""
|
199 |
|
200 |
+
#: ../admin/class-is-editor.php:160
|
201 |
msgid "None"
|
202 |
msgstr ""
|
203 |
|
204 |
+
#: ../admin/class-is-editor.php:164
|
205 |
msgid ""
|
206 |
"Display this post type in the search query URL and restrict search to it."
|
207 |
msgstr ""
|
208 |
|
209 |
+
#: ../admin/class-is-editor.php:169
|
210 |
msgid "No post types registered on your site."
|
211 |
msgstr ""
|
212 |
|
213 |
+
#: ../admin/class-is-editor.php:176 ../admin/class-is-editor.php:674
|
214 |
msgid "Posts"
|
215 |
msgstr ""
|
216 |
|
217 |
+
#: ../admin/class-is-editor.php:180 ../admin/class-is-editor.php:678
|
218 |
msgid "The posts and pages of searchable post types display here."
|
219 |
msgstr ""
|
220 |
|
221 |
+
#: ../admin/class-is-editor.php:181
|
222 |
msgid ""
|
223 |
"Select the specific posts you wish to search or do not select any posts to "
|
224 |
"make all posts searchable."
|
225 |
msgstr ""
|
226 |
|
227 |
+
#: ../admin/class-is-editor.php:182 ../admin/class-is-editor.php:680
|
228 |
msgid "Selected post types display in BOLD."
|
229 |
msgstr ""
|
230 |
|
231 |
+
#: ../admin/class-is-editor.php:216 ../admin/class-is-editor.php:267
|
232 |
+
#: ../admin/class-is-editor.php:326 ../admin/class-is-editor.php:623
|
233 |
+
#: ../admin/class-is-editor.php:717 ../admin/class-is-editor.php:763
|
234 |
+
#: ../admin/class-is-editor.php:799 ../admin/class-is-editor.php:959
|
235 |
msgid "Search.."
|
236 |
msgstr ""
|
237 |
|
238 |
+
#: ../admin/class-is-editor.php:220 ../admin/class-is-editor.php:721
|
239 |
+
msgid "Load All"
|
240 |
+
msgstr ""
|
241 |
+
|
242 |
+
#: ../admin/class-is-editor.php:229 ../admin/class-is-editor.php:276
|
243 |
+
#: ../admin/class-is-editor.php:333 ../admin/class-is-editor.php:631
|
244 |
+
#: ../admin/class-is-editor.php:730 ../admin/class-is-editor.php:772
|
245 |
+
#: ../admin/class-is-editor.php:807 ../admin/class-is-editor.php:967
|
246 |
+
msgid ""
|
247 |
+
"Press CTRL key & Left Mouse button to select multiple terms or deselect them."
|
248 |
msgstr ""
|
249 |
|
250 |
+
#: ../admin/class-is-editor.php:234 ../admin/class-is-editor.php:738
|
251 |
msgid "Taxonomy Terms"
|
252 |
msgstr ""
|
253 |
|
254 |
+
#: ../admin/class-is-editor.php:239
|
255 |
msgid ""
|
256 |
"Taxonomy terms that have no posts will not be visible below. Add a post with "
|
257 |
"the taxonomy you want for it to be configurable."
|
258 |
msgstr ""
|
259 |
|
260 |
+
#: ../admin/class-is-editor.php:240
|
261 |
msgid ""
|
262 |
"Terms selected here will restrict the search to posts that have the selected "
|
263 |
"terms."
|
264 |
msgstr ""
|
265 |
|
266 |
+
#: ../admin/class-is-editor.php:241
|
267 |
msgid "Taxonomy terms selected display in BOLD"
|
268 |
msgstr ""
|
269 |
|
270 |
+
#: ../admin/class-is-editor.php:286
|
271 |
msgid "AND - Search posts having all the above selected terms."
|
272 |
msgstr ""
|
273 |
|
274 |
+
#: ../admin/class-is-editor.php:288
|
275 |
msgid "OR - Search posts having any one of the above selected terms."
|
276 |
msgstr ""
|
277 |
|
278 |
+
#: ../admin/class-is-editor.php:294
|
279 |
msgid "Search in taxonomy terms title."
|
280 |
msgstr ""
|
281 |
|
282 |
+
#: ../admin/class-is-editor.php:300
|
283 |
msgid "Search in taxonomy terms description."
|
284 |
msgstr ""
|
285 |
|
286 |
+
#: ../admin/class-is-editor.php:305 ../admin/class-is-editor.php:777
|
287 |
msgid "No taxonomies registered for slected post types."
|
288 |
msgstr ""
|
289 |
|
290 |
+
#: ../admin/class-is-editor.php:312 ../admin/class-is-editor.php:784
|
291 |
msgid "Custom Fields"
|
292 |
msgstr ""
|
293 |
|
294 |
+
#: ../admin/class-is-editor.php:316
|
295 |
msgid "Select custom fields to make their values searchable."
|
296 |
msgstr ""
|
297 |
|
298 |
+
#: ../admin/class-is-editor.php:337
|
299 |
msgid "Selected Custom Fields :"
|
300 |
msgstr ""
|
301 |
|
302 |
+
#: ../admin/class-is-editor.php:348 ../admin/class-is-editor.php:822
|
303 |
msgid "WooCommerce"
|
304 |
msgstr ""
|
305 |
|
306 |
+
#: ../admin/class-is-editor.php:352
|
307 |
msgid "Configure WooCommerce products search options here."
|
308 |
msgstr ""
|
309 |
|
310 |
+
#: ../admin/class-is-editor.php:368
|
311 |
msgid "Search in WooCommerce products SKU."
|
312 |
msgstr ""
|
313 |
|
314 |
+
#: ../admin/class-is-editor.php:374
|
315 |
+
msgid "Search in WooCommerce products variation."
|
316 |
+
msgstr ""
|
317 |
+
|
318 |
+
#: ../admin/class-is-editor.php:380 ../admin/class-is-editor.php:844
|
319 |
msgid "WooCommerce product post type is not included in search."
|
320 |
msgstr ""
|
321 |
|
322 |
+
#: ../admin/class-is-editor.php:383 ../admin/class-is-editor.php:847
|
323 |
msgid "Activate WooCommerce plugin to use this option."
|
324 |
msgstr ""
|
325 |
|
326 |
+
#: ../admin/class-is-editor.php:390 ../admin/class-is-editor.php:854
|
327 |
msgid "Authors"
|
328 |
msgstr ""
|
329 |
|
330 |
+
#: ../admin/class-is-editor.php:394
|
331 |
msgid "Make specific author posts searchable."
|
332 |
msgstr ""
|
333 |
|
334 |
+
#: ../admin/class-is-editor.php:427
|
335 |
msgid ""
|
336 |
"Search has been already limited by excluding specific authors posts in the "
|
337 |
"Excludes section."
|
338 |
msgstr ""
|
339 |
|
340 |
+
#: ../admin/class-is-editor.php:435
|
341 |
msgid ""
|
342 |
"Search in author Display name and display the posts created by that author."
|
343 |
msgstr ""
|
344 |
|
345 |
+
#: ../admin/class-is-editor.php:443 ../admin/class-is-editor.php:900
|
346 |
msgid "Post Status"
|
347 |
msgstr ""
|
348 |
|
349 |
+
#: ../admin/class-is-editor.php:447
|
350 |
msgid "Configure options to search posts having specific post statuses."
|
351 |
msgstr ""
|
352 |
|
353 |
+
#: ../admin/class-is-editor.php:471
|
354 |
msgid ""
|
355 |
"Search has been already limited by excluding specific posts statuses from "
|
356 |
"search in the Excludes section."
|
357 |
msgstr ""
|
358 |
|
359 |
+
#: ../admin/class-is-editor.php:478
|
360 |
msgid "Comments"
|
361 |
msgstr ""
|
362 |
|
363 |
+
#: ../admin/class-is-editor.php:483
|
364 |
msgid "Make posts searchable that have a specific number of comments."
|
365 |
msgstr ""
|
366 |
|
367 |
+
#: ../admin/class-is-editor.php:499
|
368 |
msgid "The search operator to compare comments count."
|
369 |
msgstr ""
|
370 |
|
371 |
+
#: ../admin/class-is-editor.php:506
|
372 |
msgid "NA"
|
373 |
msgstr ""
|
374 |
|
375 |
+
#: ../admin/class-is-editor.php:510
|
376 |
msgid "The amount of comments your posts has to have."
|
377 |
msgstr ""
|
378 |
|
379 |
+
#: ../admin/class-is-editor.php:520
|
380 |
msgid "Search in approved comments content."
|
381 |
msgstr ""
|
382 |
|
383 |
+
#: ../admin/class-is-editor.php:529 ../admin/class-is-list-table.php:34
|
384 |
msgid "Date"
|
385 |
msgstr ""
|
386 |
|
387 |
+
#: ../admin/class-is-editor.php:533
|
388 |
msgid "Make posts searchable that were created in the specified date range."
|
389 |
msgstr ""
|
390 |
|
391 |
+
#: ../admin/class-is-editor.php:546
|
392 |
msgid "Day"
|
393 |
msgstr ""
|
394 |
|
395 |
+
#: ../admin/class-is-editor.php:557
|
396 |
msgid "Month"
|
397 |
msgstr ""
|
398 |
|
399 |
+
#: ../admin/class-is-editor.php:568
|
400 |
msgid "Year"
|
401 |
msgstr ""
|
402 |
|
403 |
+
#: ../admin/class-is-editor.php:582
|
404 |
msgid "Password"
|
405 |
msgstr ""
|
406 |
|
407 |
+
#: ../admin/class-is-editor.php:586
|
408 |
msgid "Configure options to search posts with or without password."
|
409 |
msgstr ""
|
410 |
|
411 |
+
#: ../admin/class-is-editor.php:591
|
412 |
msgid "Search all posts with and without passwords."
|
413 |
msgstr ""
|
414 |
|
415 |
+
#: ../admin/class-is-editor.php:593
|
416 |
msgid "Search only posts with passwords."
|
417 |
msgstr ""
|
418 |
|
419 |
+
#: ../admin/class-is-editor.php:595
|
420 |
msgid "Search only posts without passwords."
|
421 |
msgstr ""
|
422 |
|
423 |
+
#: ../admin/class-is-editor.php:608 ../admin/class-is-editor.php:945
|
424 |
msgid "File Types"
|
425 |
msgstr ""
|
426 |
|
427 |
+
#: ../admin/class-is-editor.php:612
|
428 |
msgid ""
|
429 |
"Configure searching to search based on posts that have a specific MIME type "
|
430 |
"or files that have specific media attachments"
|
431 |
msgstr ""
|
432 |
|
433 |
+
#: ../admin/class-is-editor.php:634
|
434 |
msgid ""
|
435 |
"Search has been already limited by excluding specific File type in the "
|
436 |
"Excludes section."
|
437 |
msgstr ""
|
438 |
|
439 |
+
#: ../admin/class-is-editor.php:637 ../admin/class-is-editor.php:973
|
440 |
msgid "Attachment post type is not included in search."
|
441 |
msgstr ""
|
442 |
|
443 |
+
#: ../admin/class-is-editor.php:641
|
444 |
msgid "Selected File Types :"
|
445 |
msgstr ""
|
446 |
|
447 |
+
#: ../admin/class-is-editor.php:667
|
448 |
msgid "Configure the options to exclude specific content from search."
|
449 |
msgstr ""
|
450 |
|
451 |
+
#: ../admin/class-is-editor.php:679
|
452 |
msgid "Select the posts you wish to exclude from the search."
|
453 |
msgstr ""
|
454 |
|
455 |
+
#: ../admin/class-is-editor.php:732
|
456 |
msgid ""
|
457 |
"Search is already limited to specific posts selected in Includes section."
|
458 |
msgstr ""
|
459 |
|
460 |
+
#: ../admin/class-is-editor.php:742
|
461 |
msgid ""
|
462 |
"The taxonomies and terms attached to searchable post types display here."
|
463 |
msgstr ""
|
464 |
|
465 |
+
#: ../admin/class-is-editor.php:743
|
466 |
msgid "Exclude posts from search results that have specific terms"
|
467 |
msgstr ""
|
468 |
|
469 |
+
#: ../admin/class-is-editor.php:744
|
470 |
msgid "Selected terms taxonomy title display in BOLD."
|
471 |
msgstr ""
|
472 |
|
473 |
+
#: ../admin/class-is-editor.php:788
|
474 |
msgid "Exclude posts from the search having selected custom fields."
|
475 |
msgstr ""
|
476 |
|
477 |
+
#: ../admin/class-is-editor.php:811
|
478 |
msgid "Excluded Custom Fields :"
|
479 |
msgstr ""
|
480 |
|
481 |
+
#: ../admin/class-is-editor.php:826
|
482 |
msgid "Exclude specific WooCommerce products from the search."
|
483 |
msgstr ""
|
484 |
|
485 |
+
#: ../admin/class-is-editor.php:841
|
486 |
msgid "Exclude 'out of stock' WooCommerce products."
|
487 |
msgstr ""
|
488 |
|
489 |
+
#: ../admin/class-is-editor.php:858
|
490 |
msgid "Exclude posts from the search created by slected authors."
|
491 |
msgstr ""
|
492 |
|
493 |
+
#: ../admin/class-is-editor.php:893
|
494 |
msgid ""
|
495 |
"Search has been already limited to posts created by specific authors in the "
|
496 |
"Includes section."
|
497 |
msgstr ""
|
498 |
|
499 |
+
#: ../admin/class-is-editor.php:904
|
500 |
msgid "Exclude posts from the search having selected post statuses."
|
501 |
msgstr ""
|
502 |
|
503 |
+
#: ../admin/class-is-editor.php:927
|
504 |
msgid ""
|
505 |
"Search has been already limited to posts statuses set in the Includes "
|
506 |
"section."
|
507 |
msgstr ""
|
508 |
|
509 |
+
#: ../admin/class-is-editor.php:935
|
510 |
msgid "Exclude sticky posts from search."
|
511 |
msgstr ""
|
512 |
|
513 |
+
#: ../admin/class-is-editor.php:949
|
514 |
msgid ""
|
515 |
"Exclude posts specially media attachment posts from the search having "
|
516 |
"selected file types."
|
517 |
msgstr ""
|
518 |
|
519 |
+
#: ../admin/class-is-editor.php:970
|
520 |
msgid ""
|
521 |
"Search has been already limited to specific File type set in the Includes "
|
522 |
"section."
|
523 |
msgstr ""
|
524 |
|
525 |
+
#: ../admin/class-is-editor.php:977
|
526 |
msgid "Excluded File Types :"
|
527 |
msgstr ""
|
528 |
|
529 |
+
#: ../admin/class-is-editor.php:1000
|
530 |
msgid "Configure the options here to control search of this search form."
|
531 |
msgstr ""
|
532 |
|
533 |
+
#: ../admin/class-is-editor.php:1007
|
534 |
msgid "Posts Per Page"
|
535 |
msgstr ""
|
536 |
|
537 |
+
#: ../admin/class-is-editor.php:1017
|
538 |
msgid "Number of posts to display on search results page."
|
539 |
msgstr ""
|
540 |
|
541 |
+
#: ../admin/class-is-editor.php:1026
|
542 |
msgid "Order By"
|
543 |
msgstr ""
|
544 |
|
545 |
+
#: ../admin/class-is-editor.php:1062
|
546 |
msgid "Highlight Terms"
|
547 |
msgstr ""
|
548 |
|
549 |
+
#: ../admin/class-is-editor.php:1072
|
550 |
msgid "Highlight searched terms on search results page."
|
551 |
msgstr ""
|
552 |
|
553 |
+
#: ../admin/class-is-editor.php:1078
|
554 |
msgid "Set highlight color."
|
555 |
msgstr ""
|
556 |
|
557 |
+
#: ../admin/class-is-editor.php:1087
|
558 |
msgid "Search Terms Relation"
|
559 |
msgstr ""
|
560 |
|
561 |
+
#: ../admin/class-is-editor.php:1094
|
562 |
msgid "OR - Display content having any of the searched terms."
|
563 |
msgstr ""
|
564 |
|
565 |
+
#: ../admin/class-is-editor.php:1096
|
566 |
msgid "AND - Display content having all the searched terms."
|
567 |
msgstr ""
|
568 |
|
569 |
+
#: ../admin/class-is-editor.php:1105
|
570 |
msgid "Fuzzy Matching"
|
571 |
msgstr ""
|
572 |
|
573 |
+
#: ../admin/class-is-editor.php:1111
|
574 |
msgid "Whole - Search posts that include the whole search term."
|
575 |
msgstr ""
|
576 |
|
577 |
+
#: ../admin/class-is-editor.php:1113
|
578 |
msgid ""
|
579 |
"Partial - Also search words in the posts that begins or ends with the search "
|
580 |
"term."
|
581 |
msgstr ""
|
582 |
|
583 |
+
#: ../admin/class-is-editor.php:1122
|
584 |
msgid "Keyword Stemming"
|
585 |
msgstr ""
|
586 |
|
587 |
+
#: ../admin/class-is-editor.php:1126
|
588 |
msgid "Searches the base word of a searched keyword"
|
589 |
msgstr ""
|
590 |
|
591 |
+
#: ../admin/class-is-editor.php:1127
|
592 |
msgid ""
|
593 |
"For Example: If you search \"doing\" then it also searches base word of "
|
594 |
"\"doing\" that is \"do\" in the specified post types."
|
595 |
msgstr ""
|
596 |
|
597 |
+
#: ../admin/class-is-editor.php:1128
|
598 |
msgid ""
|
599 |
"If you want to search whole exact searched term then do not use this options "
|
600 |
"and in this case it is not recommended to use when Fuzzy Matching option is "
|
601 |
"set to Whole."
|
602 |
msgstr ""
|
603 |
|
604 |
+
#: ../admin/class-is-editor.php:1134
|
605 |
msgid "Also search base word of searched keyword."
|
606 |
msgstr ""
|
607 |
|
608 |
+
#: ../admin/class-is-editor.php:1136
|
609 |
msgid "Not recommended to use when Fuzzy Matching option is set to Whole."
|
610 |
msgstr ""
|
611 |
|
612 |
+
#: ../admin/class-is-editor.php:1145
|
613 |
msgid "Sticky Posts"
|
614 |
msgstr ""
|
615 |
|
616 |
+
#: ../admin/class-is-editor.php:1151
|
617 |
msgid "Move sticky posts to the start of the search results page."
|
618 |
msgstr ""
|
619 |
|
620 |
+
#: ../admin/class-is-editor.php:1160
|
621 |
msgid "Empty Search"
|
622 |
msgstr ""
|
623 |
|
624 |
+
#: ../admin/class-is-editor.php:1166
|
625 |
msgid "Display an error for empty search query."
|
626 |
msgstr ""
|
627 |
|
628 |
+
#: ../admin/class-is-editor.php:1175
|
629 |
msgid "Respect exclude_from_search"
|
630 |
msgstr ""
|
631 |
|
632 |
+
#: ../admin/class-is-editor.php:1181
|
633 |
msgid "Do not search post types which are excluded from search."
|
634 |
msgstr ""
|
635 |
|
636 |
+
#: ../admin/class-is-editor.php:1190
|
637 |
msgid "Demo"
|
638 |
msgstr ""
|
639 |
|
640 |
+
#: ../admin/class-is-editor.php:1196
|
641 |
msgid "Display search form only for site administrator."
|
642 |
msgstr ""
|
643 |
|
644 |
+
#: ../admin/class-is-editor.php:1205 ../admin/class-is-settings-fields.php:162
|
645 |
msgid "Disable"
|
646 |
msgstr ""
|
647 |
|
648 |
+
#: ../admin/class-is-editor.php:1211
|
649 |
msgid "Disable this search form."
|
650 |
msgstr ""
|
651 |
|
658 |
msgid "Available Actions"
|
659 |
msgstr ""
|
660 |
|
661 |
+
#: ../admin/class-is-help.php:35 ../admin/partials/search-form.php:110
|
662 |
msgid "Includes"
|
663 |
msgstr ""
|
664 |
|
665 |
+
#: ../admin/class-is-help.php:40 ../admin/partials/search-form.php:114
|
666 |
msgid "Excludes"
|
667 |
msgstr ""
|
668 |
|
669 |
+
#: ../admin/class-is-help.php:45 ../admin/partials/search-form.php:118
|
670 |
msgid "Options"
|
671 |
msgstr ""
|
672 |
|
789 |
msgid "For more information:"
|
790 |
msgstr ""
|
791 |
|
792 |
+
#: ../admin/class-is-help.php:110 ../admin/partials/search-form.php:187
|
793 |
+
#: ../admin/partials/settings-form.php:97
|
794 |
msgid "Docs"
|
795 |
msgstr ""
|
796 |
|
797 |
+
#: ../admin/class-is-help.php:112 ../admin/partials/search-form.php:190
|
798 |
+
#: ../admin/partials/settings-form.php:100
|
799 |
msgid "Give us a rating"
|
800 |
msgstr ""
|
801 |
|
812 |
msgstr ""
|
813 |
|
814 |
#: ../admin/class-is-list-table.php:111 ../admin/class-is-list-table.php:174
|
815 |
+
#: ../admin/partials/search-form.php:156
|
816 |
msgid "Delete"
|
817 |
msgstr ""
|
818 |
|
822 |
msgstr ""
|
823 |
|
824 |
#: ../admin/class-is-list-table.php:150
|
825 |
+
#: ../admin/class-is-settings-fields.php:250
|
826 |
+
#: ../admin/class-is-settings-fields.php:381
|
827 |
+
#: ../admin/class-is-settings-fields.php:413 ../includes/class-is-widget.php:69
|
828 |
msgid "Edit"
|
829 |
msgstr ""
|
830 |
|
831 |
+
#: ../admin/class-is-list-table.php:160 ../admin/partials/search-form.php:171
|
|
|
832 |
msgid "Duplicate"
|
833 |
msgstr ""
|
834 |
|
835 |
+
#: ../admin/class-is-list-table.php:173 ../admin/partials/search-form.php:156
|
|
|
836 |
msgid ""
|
837 |
"You are about to delete this search form.\n"
|
838 |
" 'Cancel' to stop, 'OK' to delete."
|
851 |
msgid "d/m/Y"
|
852 |
msgstr ""
|
853 |
|
854 |
+
#: ../admin/class-is-settings-fields.php:141
|
855 |
msgid "Select Menu"
|
856 |
msgstr ""
|
857 |
|
858 |
+
#: ../admin/class-is-settings-fields.php:142
|
859 |
#: ../includes/class-is-search-form.php:60
|
860 |
msgid "Search Form"
|
861 |
msgstr ""
|
862 |
|
863 |
+
#: ../admin/class-is-settings-fields.php:143
|
864 |
msgid "Form Style"
|
865 |
msgstr ""
|
866 |
|
867 |
+
#: ../admin/class-is-settings-fields.php:144
|
868 |
msgid "Menu Title"
|
869 |
msgstr ""
|
870 |
|
871 |
+
#: ../admin/class-is-settings-fields.php:145
|
872 |
msgid "Menu Classes"
|
873 |
msgstr ""
|
874 |
|
875 |
+
#: ../admin/class-is-settings-fields.php:146
|
876 |
msgid "Google CSE"
|
877 |
msgstr ""
|
878 |
|
879 |
+
#: ../admin/class-is-settings-fields.php:147
|
880 |
msgid "Close Icon"
|
881 |
msgstr ""
|
882 |
|
883 |
+
#: ../admin/class-is-settings-fields.php:155
|
884 |
msgid "Header"
|
885 |
msgstr ""
|
886 |
|
887 |
+
#: ../admin/class-is-settings-fields.php:156
|
888 |
msgid "Footer"
|
889 |
msgstr ""
|
890 |
|
891 |
+
#: ../admin/class-is-settings-fields.php:157
|
892 |
msgid "Mobile Display"
|
893 |
msgstr ""
|
894 |
|
895 |
+
#: ../admin/class-is-settings-fields.php:158
|
896 |
msgid "Custom CSS"
|
897 |
msgstr ""
|
898 |
|
899 |
+
#: ../admin/class-is-settings-fields.php:159
|
900 |
msgid "Stopwords"
|
901 |
msgstr ""
|
902 |
|
903 |
+
#: ../admin/class-is-settings-fields.php:160
|
904 |
msgid "Synonyms"
|
905 |
msgstr ""
|
906 |
|
907 |
+
#: ../admin/class-is-settings-fields.php:161
|
908 |
msgid "Not load files"
|
909 |
msgstr ""
|
910 |
|
911 |
+
#: ../admin/class-is-settings-fields.php:163
|
912 |
msgid "Default Search"
|
913 |
msgstr ""
|
914 |
|
915 |
+
#: ../admin/class-is-settings-fields.php:173
|
916 |
msgid "Use below options to display search in menu and configure it."
|
917 |
msgstr ""
|
918 |
|
919 |
+
#: ../admin/class-is-settings-fields.php:180
|
920 |
msgid "Use below options to make sitewide changes in search."
|
921 |
msgstr ""
|
922 |
|
923 |
+
#: ../admin/class-is-settings-fields.php:188
|
924 |
msgid "Select menu here where you want to display search form."
|
925 |
msgstr ""
|
926 |
|
927 |
+
#: ../admin/class-is-settings-fields.php:208
|
928 |
msgid "No navigation menu registered on your site."
|
929 |
msgstr ""
|
930 |
|
931 |
+
#: ../admin/class-is-settings-fields.php:218
|
932 |
msgid ""
|
933 |
"Select search form that will control search performed using menu search."
|
934 |
msgstr ""
|
935 |
|
936 |
+
#: ../admin/class-is-settings-fields.php:252
|
937 |
+
#: ../admin/class-is-settings-fields.php:383
|
938 |
+
#: ../admin/class-is-settings-fields.php:415 ../includes/class-is-widget.php:71
|
|
|
|
|
|
|
|
|
939 |
msgid "Create New"
|
940 |
msgstr ""
|
941 |
|
942 |
+
#: ../admin/class-is-settings-fields.php:264
|
943 |
msgid "Select form style for the search form displayed in the menu."
|
944 |
msgstr ""
|
945 |
|
946 |
+
#: ../admin/class-is-settings-fields.php:268
|
947 |
msgid "Default"
|
948 |
msgstr ""
|
949 |
|
950 |
+
#: ../admin/class-is-settings-fields.php:269
|
951 |
msgid "Dropdown"
|
952 |
msgstr ""
|
953 |
|
954 |
+
#: ../admin/class-is-settings-fields.php:270
|
955 |
msgid "Sliding"
|
956 |
msgstr ""
|
957 |
|
958 |
+
#: ../admin/class-is-settings-fields.php:271
|
959 |
msgid "Full Width"
|
960 |
msgstr ""
|
961 |
|
962 |
+
#: ../admin/class-is-settings-fields.php:272
|
963 |
msgid "Popup"
|
964 |
msgstr ""
|
965 |
|
966 |
+
#: ../admin/class-is-settings-fields.php:305
|
967 |
msgid ""
|
968 |
"Displays set menu title text in place of search icon displays in navigation "
|
969 |
"menu."
|
970 |
msgstr ""
|
971 |
|
972 |
+
#: ../admin/class-is-settings-fields.php:317
|
973 |
msgid "Adds set classes in the search navigation menu item."
|
974 |
msgstr ""
|
975 |
|
976 |
+
#: ../admin/class-is-settings-fields.php:322
|
977 |
msgid "Add classes seperated by space."
|
978 |
msgstr ""
|
979 |
|
980 |
+
#: ../admin/class-is-settings-fields.php:330
|
981 |
msgid ""
|
982 |
"Add only Google Custom Search( CSE ) search form code in the above text box "
|
983 |
"that will replace default search form."
|
984 |
msgstr ""
|
985 |
|
986 |
+
#: ../admin/class-is-settings-fields.php:353
|
987 |
+
msgid "Display Search Form Close Icon"
|
|
|
|
|
|
|
|
|
|
|
|
|
988 |
msgstr ""
|
989 |
|
990 |
+
#: ../admin/class-is-settings-fields.php:362
|
991 |
+
msgid "Displays search form in site header using wp_head hook."
|
|
|
|
|
992 |
msgstr ""
|
993 |
|
994 |
+
#: ../admin/class-is-settings-fields.php:374
|
995 |
+
#: ../admin/class-is-settings-fields.php:406 ../includes/class-is-widget.php:62
|
996 |
+
msgid "none"
|
997 |
msgstr ""
|
998 |
|
999 |
+
#: ../admin/class-is-settings-fields.php:394
|
1000 |
+
msgid "Displays search form in site footer using wp_footer hook."
|
1001 |
msgstr ""
|
1002 |
|
1003 |
+
#: ../admin/class-is-settings-fields.php:425
|
1004 |
msgid ""
|
1005 |
+
"Note: Does not work with caching as this functionality uses the WordPress "
|
1006 |
+
"wp_is_mobile function."
|
|
|
|
|
|
|
|
|
1007 |
msgstr ""
|
1008 |
|
1009 |
+
#: ../admin/class-is-settings-fields.php:438
|
1010 |
+
msgid "Display search form in header on mobile devices"
|
|
|
1011 |
msgstr ""
|
1012 |
|
1013 |
+
#: ../admin/class-is-settings-fields.php:441
|
1014 |
+
msgid ""
|
1015 |
+
"Use this option to display search form in your site header and hide the "
|
1016 |
+
"search form on desktop using CSS code."
|
1017 |
msgstr ""
|
1018 |
|
1019 |
+
#: ../admin/class-is-settings-fields.php:454
|
1020 |
+
msgid "This site uses cache"
|
1021 |
msgstr ""
|
1022 |
|
1023 |
+
#: ../admin/class-is-settings-fields.php:462
|
1024 |
msgid "Add custom css code if any to style search form."
|
1025 |
msgstr ""
|
1026 |
|
1027 |
+
#: ../admin/class-is-settings-fields.php:475
|
1028 |
msgid ""
|
1029 |
"Enter words here to add them to the list of stopwords. The stopwords will "
|
1030 |
"not be searched."
|
1031 |
msgstr ""
|
1032 |
|
1033 |
+
#: ../admin/class-is-settings-fields.php:476
|
1034 |
msgid "This works with search form."
|
1035 |
msgstr ""
|
1036 |
|
1037 |
+
#: ../admin/class-is-settings-fields.php:480
|
1038 |
msgid "Please separate words with commas."
|
1039 |
msgstr ""
|
1040 |
|
1041 |
+
#: ../admin/class-is-settings-fields.php:488
|
1042 |
msgid "Add synonyms here to make the searches find better results."
|
1043 |
msgstr ""
|
1044 |
|
1045 |
+
#: ../admin/class-is-settings-fields.php:489
|
1046 |
msgid ""
|
1047 |
"If you add bird = crow to the list of synonyms, searches for bird "
|
1048 |
"automatically become a search for bird crow and will thus match to posts "
|
1049 |
"that include either bird or crow."
|
1050 |
msgstr ""
|
1051 |
|
1052 |
+
#: ../admin/class-is-settings-fields.php:490
|
1053 |
msgid ""
|
1054 |
"This only works for search forms and in OR searches. In AND searches the "
|
1055 |
"synonyms only restrict the search, as now the search only finds posts that "
|
1056 |
"contain both bird and crow."
|
1057 |
msgstr ""
|
1058 |
|
1059 |
+
#: ../admin/class-is-settings-fields.php:495
|
1060 |
msgid ""
|
1061 |
"The format here is key = value;. Please separate every synonyms key = value "
|
1062 |
"pairs with semicolon."
|
1063 |
msgstr ""
|
1064 |
|
1065 |
+
#: ../admin/class-is-settings-fields.php:505
|
1066 |
msgid "Disable synonyms for the search forms having AND search terms relation."
|
1067 |
msgstr ""
|
1068 |
|
1069 |
+
#: ../admin/class-is-settings-fields.php:514
|
1070 |
msgid "Configure to disable loading plugin CSS and JavaScript files."
|
1071 |
msgstr ""
|
1072 |
|
1073 |
+
#: ../admin/class-is-settings-fields.php:518
|
1074 |
msgid "Plugin CSS File"
|
1075 |
msgstr ""
|
1076 |
|
1077 |
+
#: ../admin/class-is-settings-fields.php:519
|
1078 |
msgid "Plugin JavaScript File"
|
1079 |
msgstr ""
|
1080 |
|
1081 |
+
#: ../admin/class-is-settings-fields.php:539
|
1082 |
msgid ""
|
1083 |
"If checked, you have to add following plugin file code into your child theme "
|
1084 |
"CSS file."
|
1085 |
msgstr ""
|
1086 |
|
1087 |
+
#: ../admin/class-is-settings-fields.php:543
|
1088 |
msgid ""
|
1089 |
"If checked, you have to add following plugin files code into your child "
|
1090 |
"theme JavaScript file."
|
1091 |
msgstr ""
|
1092 |
|
1093 |
+
#: ../admin/class-is-settings-fields.php:558
|
1094 |
+
msgid "Disable search functionality on whole site."
|
1095 |
+
msgstr ""
|
1096 |
+
|
1097 |
+
#: ../admin/class-is-settings-fields.php:569
|
1098 |
+
msgid ""
|
1099 |
+
"Do not use default search form to control WordPress default search "
|
1100 |
+
"functionality."
|
1101 |
+
msgstr ""
|
1102 |
+
|
1103 |
+
#: ../admin/partials/search-form.php:23
|
1104 |
msgid "Edit Search Form"
|
1105 |
msgstr ""
|
1106 |
|
1107 |
+
#: ../admin/partials/search-form.php:68
|
1108 |
msgid "Enter search form name"
|
1109 |
msgstr ""
|
1110 |
|
1111 |
+
#: ../admin/partials/search-form.php:80
|
1112 |
msgid "Enter search form name."
|
1113 |
msgstr ""
|
1114 |
|
1115 |
+
#: ../admin/partials/search-form.php:80
|
1116 |
msgid "Editing title of Default Search Form is prohibited."
|
1117 |
msgstr ""
|
1118 |
|
1119 |
+
#: ../admin/partials/search-form.php:92
|
1120 |
msgid ""
|
1121 |
"Copy this shortcode and paste it into your post, page, or text widget "
|
1122 |
"content:"
|
1123 |
msgstr ""
|
1124 |
|
1125 |
+
#: ../admin/partials/search-form.php:165
|
1126 |
msgid "Save"
|
1127 |
msgstr ""
|
1128 |
|
1129 |
+
#: ../admin/partials/search-form.php:175
|
1130 |
msgid "Reset"
|
1131 |
msgstr ""
|
1132 |
|
1133 |
+
#: ../admin/partials/search-form.php:175
|
1134 |
msgid ""
|
1135 |
"You are about to reset this search form.\n"
|
1136 |
" 'Cancel' to stop, 'OK' to reset."
|
1137 |
msgstr ""
|
1138 |
|
1139 |
+
#: ../admin/partials/search-form.php:184 ../admin/partials/settings-form.php:94
|
|
|
1140 |
msgid "Information"
|
1141 |
msgstr ""
|
1142 |
|
1143 |
+
#: ../admin/partials/search-form.php:189 ../admin/partials/settings-form.php:99
|
|
|
1144 |
msgid "Contact"
|
1145 |
msgstr ""
|
1146 |
|
1147 |
#: ../includes/class-is-search-form.php:111
|
1148 |
+
#: ../includes/class-is-search-form.php:207
|
1149 |
msgid "Untitled"
|
1150 |
msgstr ""
|
1151 |
|
1152 |
+
#: ../includes/class-is-search-form.php:133
|
1153 |
#, php-format
|
1154 |
msgid ""
|
1155 |
"<code>%1$s</code> property of a <code>IS_Search_Form</code> object is "
|
public/class-is-public.php
CHANGED
@@ -35,8 +35,7 @@ class IS_Public
|
|
35 |
if ( null !== $is ) {
|
36 |
$this->opt = $is->opt;
|
37 |
} else {
|
38 |
-
$
|
39 |
-
$this->opt = array_merge( $old_opt, (array) $new_opt );
|
40 |
}
|
41 |
|
42 |
}
|
@@ -489,7 +488,8 @@ class IS_Public
|
|
489 |
case 'post_type':
|
490 |
|
491 |
if ( !isset( $q['post_type'] ) || NULL == $q['post_type'] ) {
|
492 |
-
$
|
|
|
493 |
} else {
|
494 |
$query->set( $inc_key, $q['post_type'] );
|
495 |
}
|
35 |
if ( null !== $is ) {
|
36 |
$this->opt = $is->opt;
|
37 |
} else {
|
38 |
+
$this->opt = Ivory_Search::load_options();
|
|
|
39 |
}
|
40 |
|
41 |
}
|
488 |
case 'post_type':
|
489 |
|
490 |
if ( !isset( $q['post_type'] ) || NULL == $q['post_type'] ) {
|
491 |
+
$pt_val = array_values( $inc_val );
|
492 |
+
$query->set( $inc_key, $pt_val );
|
493 |
} else {
|
494 |
$query->set( $inc_key, $q['post_type'] );
|
495 |
}
|
readme.txt
CHANGED
@@ -3,9 +3,9 @@ Contributors: ivorysearch, vinod dalvi
|
|
3 |
Donate link: https://ivorysearch.com/pricing/
|
4 |
Tags: search, search menu, woocommerce search, search plugin, search shortcode, search widget, exclude from search, custom search, search by post type, search by category, relevant search, search forms
|
5 |
Requires at least: 3.9
|
6 |
-
Tested up to:
|
7 |
Requires PHP: 5.2.4
|
8 |
-
Stable tag: 4.1.
|
9 |
License: GPLv2 or later
|
10 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
@@ -177,6 +177,11 @@ Yes we do. We try our best to help free users with customisation requests and we
|
|
177 |
|
178 |
== Changelog ==
|
179 |
|
|
|
|
|
|
|
|
|
|
|
180 |
= 4.1.3 =
|
181 |
* Developed option to search specific posts, pages or custom post types.
|
182 |
|
@@ -234,4 +239,4 @@ Yes we do. We try our best to help free users with customisation requests and we
|
|
234 |
* This is a major update.
|
235 |
* Renamed plugin from "Add Search To Menu" to "Ivory Search".
|
236 |
* Changed old settings page from Settings -> Add Search To Menu to Ivory Search -> Settings
|
237 |
-
* Developed lot of options to enhance search functionality.
|
3 |
Donate link: https://ivorysearch.com/pricing/
|
4 |
Tags: search, search menu, woocommerce search, search plugin, search shortcode, search widget, exclude from search, custom search, search by post type, search by category, relevant search, search forms
|
5 |
Requires at least: 3.9
|
6 |
+
Tested up to: 5.0
|
7 |
Requires PHP: 5.2.4
|
8 |
+
Stable tag: 4.1.4
|
9 |
License: GPLv2 or later
|
10 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
177 |
|
178 |
== Changelog ==
|
179 |
|
180 |
+
= 4.1.4 =
|
181 |
+
* Searches in WooCommerce products variation.
|
182 |
+
* Fixed - Firefox browser dropdown select issue
|
183 |
+
* Optimized plugin admin options.
|
184 |
+
|
185 |
= 4.1.3 =
|
186 |
* Developed option to search specific posts, pages or custom post types.
|
187 |
|
239 |
* This is a major update.
|
240 |
* Renamed plugin from "Add Search To Menu" to "Ivory Search".
|
241 |
* Changed old settings page from Settings -> Add Search To Menu to Ivory Search -> Settings
|
242 |
+
* Developed lot of options to enhance search functionality.
|