Changeset 3310401
- Timestamp:
- 06/12/2025 10:10:04 AM (9 months ago)
- Location:
- predictive-search/trunk
- Files:
-
- 5 edited
-
assets/js/predictive-search-popup.backbone.js (modified) (1 diff)
-
assets/js/predictive-search-popup.backbone.min.js (modified) (1 diff)
-
includes/class-wp-predictive-search.php (modified) (5 diffs)
-
readme.txt (modified) (3 diffs)
-
wp-predictive-search.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
predictive-search/trunk/assets/js/predictive-search-popup.backbone.js
r3026164 r3310401 145 145 }.bind( this )); 146 146 147 let wpps_bar = null; 147 148 var ps_id = $( this.predictive_search_input ).data('ps-id'); 148 var wpps_bar = $( '.wpps_bar-' + ps_id ); 149 if ( '' != ps_id ) { 150 wpps_bar = $( '.wpps_bar-' + ps_id ); 151 } else { 152 wpps_bar = $( this.predictive_search_input ).parents('.wpps_bar'); 153 } 149 154 150 155 if ( this.original_ps_search_other == '' ) { -
predictive-search/trunk/assets/js/predictive-search-popup.backbone.min.js
r3026164 r3310401 1 jQuery(document).ready( function(a){var b=wpps_vars.legacy_api_url,c=wpps_vars.permalink_structure,d=wpps_vars.search_page_url,e=wpps_vars.minChars,f=wpps_vars.delay,g=24,h=!0,i=!0,j="fadeInUpBig";"undefined"!=typeof wpps_vars.cache_timeout&&(g=wpps_vars.cache_timeout),"undefined"!=typeof wpps_vars.is_debug&&"yes"!=wpps_vars.is_debug&&(h=!1),"undefined"!=typeof wpps_vars.allow_result_effect&&"yes"!=wpps_vars.allow_result_effect&&(i=!1),"undefined"!=typeof wpps_vars.show_effect&&(j=wpps_vars.show_effect),h&&console.log("Predictive Search -- DEBUG");var k={apps:{},models:{},collections:{},views:{}};_.templateSettings={evaluate:/[<{][%{](.+?)[%}][}>]/g,interpolate:/[<{][%{]=(.+?)[%}][}>]/g,escape:/[<{][%{]-(.+?)[%}][}>]/g},k.models.Item=Backbone.Model.extend({defaults:{title:"Empty Post",keyword:"",url:null,image_url:null,description:null,categories:[],type:"post",status:!0,...wpps_vars.item_extra_data}}),k.collections.Items=Backbone.Collection.extend({model:k.models.Item,totalItems:function(){return this.where({status:!0}).length},haveItems:function(a){return this.where({type:a}).length}}),k.views.Item=Backbone.View.extend({tagName:"li",className:function(){switch(this.model.get("type")){case"nothing":return"ac_odd nothing";default:return"ac_odd";}},itemTpl:_.template(a("#wp_psearch_itemTpl").html().replace("/*<![CDATA[*/","").replace("/*]]>*/","")),footerSidebarTpl:_.template(a("#wp_psearch_footerSidebarTpl").html().replace("/*<![CDATA[*/","").replace("/*]]>*/","")),footerHeaderTpl:_.template(a("#wp_psearch_footerHeaderTpl").html().replace("/*<![CDATA[*/","").replace("/*]]>*/","")),initialize:function(){this.listenTo(this.model,"destroy",this.remove)},render:function(){switch(this.model.get("type")){case"header":this.$el.html("<div class=\"ajax_search_content_title\">"+this.model.get("title")+"</div>");break;case"footerSidebar":this.$el.html(this.footerSidebarTpl(this.model.toJSON()));break;case"footerHeader":this.$el.html(this.footerHeaderTpl(this.model.toJSON()));break;case"footerCustom":this.$el.html(_.template(a("#wp_psearch_footerCustomTpl_"+this.model.get("templateID")).html().replace("/*<![CDATA[*/","").replace("/*]]>*/",""))(this.model.toJSON()));break;case"nothing":this.$el.html("<div class=\"ajax_no_result\">"+this.model.get("title")+"</div>");break;default:i?this.$el.html(this.itemTpl(this.model.toJSON())).addClass("animated "+j).one("webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend",function(){a(this).removeClass("animated "+j)}):this.$el.html(this.itemTpl(this.model.toJSON()));}return this}}),k.views.PopupResult=Backbone.View.extend({initialize:function(){this.predictive_search_input=null,this.original_ps_search_other="",this.delaytime=0,this.prepend=!1,this.listenTo(this.collection,"add",this.addItem),this.list_items_container=this.$(".predictive_search_results")},createItems:function(b,c){this.prepend=c,a.each(b,function(a,b){this.collection.add(b)}.bind(this));var d=a(this.predictive_search_input).data("ps-id"),e=a(".wpps_bar-"+d);""==this.original_ps_search_other&&(this.original_ps_search_other=e.data("ps-search_other")),""==this.original_ps_search_in&&(this.original_ps_search_in=e.data("ps-search_in")),ps_search_other=this.original_ps_search_other.split(","),new_ps_search_other=[],new_ps_search_in="",a.each(ps_search_other,function(a,b){0<this.collection.haveItems(b)&&(new_ps_search_other.push(b),""==new_ps_search_in&&(new_ps_search_in=b))}.bind(this)),""!=new_ps_search_in&&(e.data("ps-search_in",new_ps_search_in),a(this.predictive_search_input).parents(".wpps_form").find("input[name=search_in]").val(new_ps_search_in)),0==new_ps_search_other.length&&(new_ps_search_other=[e.data("ps-search_in")]),e.data("ps-search_other",new_ps_search_other.join(",")),a(this.predictive_search_input).parents(".wpps_form").find("input[name=search_other]").val(new_ps_search_other.join(","))},addItem:function(b){var c=new k.views.Item({model:b}),d=c.render().el;this.prepend?this.list_items_container.prepend(d):this.list_items_container.append(d),a.data(d,"ac_data",b.attributes)},clearAll:function(){return _.invoke(this.collection.where({status:!0}),"destroy"),!1}}),k.apps.App={initialize:function(){a(document).on("click",".wpps_nav_submit_bt",this.goToSearchResultPage),a(".wpps_form").on("keypress",function(a){if(13==a.keyCode)return this.goToSearchResultPage(a),!1}.bind(this)),a(".wpps_category_selector").on("change",function(){a(this).parents(".wpps_container").find(".wpps_nav_facade_label").html(a(this).find("option:selected").text().trim())}).on("focus",function(){a(this).parents(".wpps_container").addClass("wpps_container_active")}).on("blur",function(){a(this).parents(".wpps_container").removeClass("wpps_container_active")}),a(document).on("click",".wpps_mobile_icon",function(){var b=a(this).parents(".wpps_bar"),c=b.data("ps-id"),d=5,e=a(this).offset().top+a(this).find("svg").outerHeight(),f=!1;if(680<window.innerWidth&&(d=b.offset().left,f=b.innerWidth()),a(this).hasClass("active"))a(this).removeClass("active"),b.append(a(".wpps_container-"+c)),a("#wpps_mobile_popup-"+c).remove();else if(a(this).addClass("active"),a("<div class=\"wpps_mobile_popup\" id=\"wpps_mobile_popup-"+c+"\"></div>").appendTo(document.body),b.find(".wpps_container").appendTo(a("#wpps_mobile_popup-"+c)),a("#wpps_mobile_popup-"+c).css({transform:"translate3d("+d+"px, "+e+"px, 0)"}),f){a("#wpps_mobile_popup-"+c).css({width:f+"px"});var g=a("#wpps_mobile_popup-"+c).find(".wpps_form"),h=g.find(".wpps_category_selector").data("ps-cat_max_wide"),i=g.innerWidth()*h/100;g.find(".wpps_nav_facade_label").css("max-width",i)}a(".ac_input_"+c).trigger("ps_mobile_icon_click")}),this.initPredictSearch()},initPredictSearch:function(){a(".wpps_search_keyword").each(function(){a(this).ps_autocomplete(b,{minChars:e,delay:f,cacheTimeout:g,isDebug:h,scrollHeight:2e3,loadingClass:"predictive_loading",highlight:!1},k);var c=a(this).parents(".wpps_bar"),d=c.data("ps-search_in"),i=c.data("ps-search_other");c.find("input[name=search_in]").val(d),c.find("input[name=search_other]").val(i),a(this).result(function(b,c,d){""!=c&&a(this).val(c)})}).on("focus",function(){a(this).parents(".wpps_container").addClass("wpps_container_active")}).on("blur",function(){a(this).parents(".wpps_container").removeClass("wpps_container_active")})},goToSearchResultPage:function(b){var c=a(b.target),d=c.parents(".wpps_container");predictive_search_input=d.find(".wpps_search_keyword"),cat_selected=d.find(".wpps_category_selector option:selected"),""!=predictive_search_input.val()&&predictive_search_input.val()!=predictive_search_input.data("ps-default_text")?d.find(".wpps_form").trigger("submit"):""!==cat_selected.val()&&(cat_href=cat_selected.data("href"),window.location=cat_href)}};var l=k.apps.App;l.initialize()});1 jQuery(document).ready((function(e){var t=wpps_vars.legacy_api_url,s=(wpps_vars.permalink_structure,wpps_vars.search_page_url,wpps_vars.minChars),i=wpps_vars.delay,a=24,n=!0,p=!0,r="fadeInUpBig";void 0!==wpps_vars.cache_timeout&&(a=wpps_vars.cache_timeout),void 0!==wpps_vars.is_debug&&"yes"!=wpps_vars.is_debug&&(n=!1),void 0!==wpps_vars.allow_result_effect&&"yes"!=wpps_vars.allow_result_effect&&(p=!1),void 0!==wpps_vars.show_effect&&(r=wpps_vars.show_effect);var o={apps:{},models:{},collections:{},views:{}};_.templateSettings={evaluate:/[<{][%{](.+?)[%}][}>]/g,interpolate:/[<{][%{]=(.+?)[%}][}>]/g,escape:/[<{][%{]-(.+?)[%}][}>]/g},o.models.Item=Backbone.Model.extend({defaults:{title:"Empty Post",keyword:"",url:null,image_url:null,description:null,categories:[],type:"post",status:!0,...wpps_vars.item_extra_data}}),o.collections.Items=Backbone.Collection.extend({model:o.models.Item,totalItems:function(){return this.where({status:!0}).length},haveItems:function(e){return this.where({type:e}).length}}),o.views.Item=Backbone.View.extend({tagName:"li",className:function(e){switch(this.model.get("type")){case"nothing":return"ac_odd nothing";default:return"ac_odd"}},itemTpl:_.template(e("#wp_psearch_itemTpl").html().replace("/*<![CDATA[*/","").replace("/*]]>*/","")),footerSidebarTpl:_.template(e("#wp_psearch_footerSidebarTpl").html().replace("/*<![CDATA[*/","").replace("/*]]>*/","")),footerHeaderTpl:_.template(e("#wp_psearch_footerHeaderTpl").html().replace("/*<![CDATA[*/","").replace("/*]]>*/","")),initialize:function(){this.listenTo(this.model,"destroy",this.remove)},render:function(){switch(this.model.get("type")){case"header":this.$el.html('<div class="ajax_search_content_title">'+this.model.get("title")+"</div>");break;case"footerSidebar":this.$el.html(this.footerSidebarTpl(this.model.toJSON()));break;case"footerHeader":this.$el.html(this.footerHeaderTpl(this.model.toJSON()));break;case"footerCustom":this.$el.html(_.template(e("#wp_psearch_footerCustomTpl_"+this.model.get("templateID")).html().replace("/*<![CDATA[*/","").replace("/*]]>*/",""))(this.model.toJSON()));break;case"nothing":this.$el.html('<div class="ajax_no_result">'+this.model.get("title")+"</div>");break;default:p?this.$el.html(this.itemTpl(this.model.toJSON())).addClass("animated "+r).one("webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend",(function(){e(this).removeClass("animated "+r)})):this.$el.html(this.itemTpl(this.model.toJSON()));break}return this}}),o.views.PopupResult=Backbone.View.extend({initialize:function(){this.predictive_search_input=null,this.original_ps_search_other="",this.delaytime=0,this.prepend=!1,this.listenTo(this.collection,"add",this.addItem),this.list_items_container=this.$(".predictive_search_results")},createItems:function(t,s){this.prepend=s,e.each(t,function(e,t){this.collection.add(t)}.bind(this));let i=null;var a=e(this.predictive_search_input).data("ps-id");i=""!=a?e(".wpps_bar-"+a):e(this.predictive_search_input).parents(".wpps_bar"),""==this.original_ps_search_other&&(this.original_ps_search_other=i.data("ps-search_other")),""==this.original_ps_search_in&&(this.original_ps_search_in=i.data("ps-search_in")),ps_search_other=this.original_ps_search_other.split(","),new_ps_search_other=[],new_ps_search_in="",e.each(ps_search_other,function(e,t){this.collection.haveItems(t)>0&&(new_ps_search_other.push(t),""==new_ps_search_in&&(new_ps_search_in=t))}.bind(this)),""!=new_ps_search_in&&(i.data("ps-search_in",new_ps_search_in),e(this.predictive_search_input).parents(".wpps_form").find("input[name=search_in]").val(new_ps_search_in)),0==new_ps_search_other.length&&(new_ps_search_other=[i.data("ps-search_in")]),i.data("ps-search_other",new_ps_search_other.join(",")),e(this.predictive_search_input).parents(".wpps_form").find("input[name=search_other]").val(new_ps_search_other.join(","))},addItem:function(t){var s=new o.views.Item({model:t}).render().el;this.prepend?this.list_items_container.prepend(s):this.list_items_container.append(s),e.data(s,"ac_data",t.attributes)},clearAll:function(){return _.invoke(this.collection.where({status:!0}),"destroy"),!1}}),o.apps.App={initialize:function(){e(document).on("click",".wpps_nav_submit_bt",this.goToSearchResultPage),e(".wpps_form").on("keypress",function(e){if(13==e.keyCode)return this.goToSearchResultPage(e),!1}.bind(this)),e(".wpps_category_selector").on("change",(function(){e(this).parents(".wpps_container").find(".wpps_nav_facade_label").html(e(this).find("option:selected").text().trim())})).on("focus",(function(){e(this).parents(".wpps_container").addClass("wpps_container_active")})).on("blur",(function(){e(this).parents(".wpps_container").removeClass("wpps_container_active")})),e(document).on("click",".wpps_mobile_icon",(function(){var t=e(this).parents(".wpps_bar"),s=t.data("ps-id"),i=5,a=e(this).offset().top+e(this).find("svg").outerHeight(),n=!1;if(window.innerWidth>680&&(i=t.offset().left,n=t.innerWidth()),e(this).hasClass("active"))e(this).removeClass("active"),t.append(e(".wpps_container-"+s)),e("#wpps_mobile_popup-"+s).remove();else if(e(this).addClass("active"),e('<div class="wpps_mobile_popup" id="wpps_mobile_popup-'+s+'"></div>').appendTo(document.body),t.find(".wpps_container").appendTo(e("#wpps_mobile_popup-"+s)),e("#wpps_mobile_popup-"+s).css({transform:"translate3d("+i+"px, "+a+"px, 0)"}),n){e("#wpps_mobile_popup-"+s).css({width:n+"px"});var p=e("#wpps_mobile_popup-"+s).find(".wpps_form"),r=p.find(".wpps_category_selector").data("ps-cat_max_wide"),o=p.innerWidth()*r/100;p.find(".wpps_nav_facade_label").css("max-width",o)}e(".ac_input_"+s).trigger("ps_mobile_icon_click")})),this.initPredictSearch()},initPredictSearch:function(){e(".wpps_search_keyword").each((function(){e(this).ps_autocomplete(t,{minChars:s,delay:i,cacheTimeout:a,isDebug:n,scrollHeight:2e3,loadingClass:"predictive_loading",highlight:!1},o);var p=e(this).parents(".wpps_bar"),r=p.data("ps-search_in"),_=p.data("ps-search_other");p.find("input[name=search_in]").val(r),p.find("input[name=search_other]").val(_),e(this).result((function(t,s,i){""!=s&&e(this).val(s)}))})).on("focus",(function(){e(this).parents(".wpps_container").addClass("wpps_container_active")})).on("blur",(function(){e(this).parents(".wpps_container").removeClass("wpps_container_active")}))},goToSearchResultPage:function(t){var s=e(t.target).parents(".wpps_container");predictive_search_input=s.find(".wpps_search_keyword"),cat_selected=s.find(".wpps_category_selector option:selected"),""!=predictive_search_input.val()&&predictive_search_input.val()!=predictive_search_input.data("ps-default_text")?s.find(".wpps_form").trigger("submit"):""!==cat_selected.val()&&(cat_href=cat_selected.data("href"),window.location=cat_href)}},o.apps.App.initialize()})); -
predictive-search/trunk/includes/class-wp-predictive-search.php
r2798638 r3310401 147 147 148 148 public function general_sql( $main_sql ) { 149 if ( empty( $main_sql ) ) { 150 return ''; 151 } 149 152 150 153 $select_sql = ''; … … 295 298 } 296 299 297 $main_sql = array_merge_recursive( $main_sql, $term_relationships_sql ); 298 $main_sql = array_merge_recursive( $main_sql, $wpml_sql ); 299 $main_sql = array_merge_recursive( $main_sql, $ps_keyword_sql ); 300 $main_sql = array_merge_recursive( $main_sql, $postmeta_sql ); 300 if ( ! is_array( $main_sql ) ) { 301 $main_sql = array(); 302 } 303 304 if ( is_array( $term_relationships_sql ) ) { 305 $main_sql = array_merge_recursive( $main_sql, $term_relationships_sql ); 306 } 307 308 if ( is_array( $wpml_sql ) ) { 309 $main_sql = array_merge_recursive( $main_sql, $wpml_sql ); 310 } 311 312 if ( is_array( $ps_keyword_sql ) ) { 313 $main_sql = array_merge_recursive( $main_sql, $ps_keyword_sql ); 314 } 315 316 if ( is_array( $postmeta_sql ) ) { 317 $main_sql = array_merge_recursive( $main_sql, $postmeta_sql ); 318 } 301 319 302 320 $sql = $this->general_sql( $main_sql ); … … 312 330 313 331 $sql = $this->get_post_search_sql( $search_keyword, 1, 0, $wpps_search_focus_enable, $wpps_search_focus_plugin, $post_type, $term_id, $current_lang, true ); 332 333 if ( empty( $sql ) ) { 334 return false; 335 } 314 336 315 337 $sql = "SELECT EXISTS( " . $sql . ")"; … … 479 501 } 480 502 503 if ( ! is_array( $main_sql ) ) { 504 $main_sql = array(); 505 } 481 506 $main_sql = array_merge_recursive( $main_sql, $wpml_sql ); 482 507 … … 493 518 494 519 $sql = $this->get_taxonomy_search_sql( $search_keyword, 1, 0, $taxonomy, $current_lang, true ); 520 521 if ( empty( $sql ) ) { 522 return false; 523 } 495 524 496 525 $sql = "SELECT EXISTS( " . $sql . ")"; -
predictive-search/trunk/readme.txt
r3280749 r3310401 4 4 Tags: WordPress search, Predictive Search, Live Search, Elementor Search 5 5 Requires at least: 6.0 6 Tested up to: 6.8 6 Tested up to: 6.8.1 7 7 Stable tag: 1.4.2 8 8 License: GPLv3 … … 107 107 == Changelog == 108 108 109 = 1.4.3 - 2025/06/12 = 110 * This maintenance release has 1 bug fix and compatibility with WordPress 6.8.1 and WooCommerce 9.9.3 111 * Tweak - Tested for compatibility with WordPress 6.8.1 112 * Tweak - Tested for compatibility with WooCommerce 9.9.3 113 * Fix - Validate args before generate sql command 114 109 115 = 1.4.2 - 2025/04/24 = 110 116 * This maintenance release has a bug fix plus tested for compatibility with WordPress 6.8 … … 218 224 == Upgrade Notice == 219 225 226 = 1.4.3 = 227 This maintenance release has 1 bug fix and compatibility with WordPress 6.8.1 and WooCommerce 9.9.3 228 220 229 = 1.4.2 = 221 230 This maintenance release has a bug fix plus tested for compatibility with WordPress 6.8 -
predictive-search/trunk/wp-predictive-search.php
r3280749 r3310401 3 3 Plugin Name: Predictive Search 4 4 Description: Predictive Search - featuring "Smart Search" technology. Give your store customers the most awesome search experience on the web via widgets, shortcodes, Search results pages and the Predictive Search function. 5 Version: 1.4. 25 Version: 1.4.3 6 6 Author: a3rev Software 7 7 Author URI: https://a3rev.com/ 8 8 Requires at least: 6.0 9 Tested up to: 6.8 9 Tested up to: 6.8.1 10 10 Text Domain: wp-predictive-search 11 11 Domain Path: /languages … … 39 39 define( 'WPPS_KEY', 'wp_predictive_search' ); 40 40 define( 'WPPS_PREFIX', 'wp_predictive_search_' ); 41 define( 'WPPS_VERSION', '1.4. 2' );41 define( 'WPPS_VERSION', '1.4.3' ); 42 42 define( 'WPPS_G_FONTS', true ); 43 43
Note: See TracChangeset
for help on using the changeset viewer.