Changelog
Ajax Search Pro changes and updates
- Fixed a directory permission related error
- Fixed an issue with the ACF relationship filter parser to account for WPML languages
- Added a few security measures for back-end ajax handlers as well as some page forms (CVE 2023-1420 & wpscan report)
- Fixed an issue with the vertical results scrolling
- Fixed an issue with the title autocomplete
- Fixed an issue with the WooCommerce results page results count
​
- More efficient nag notices removal from the plugin back-end section
- Vertical and Horizontal scrollbars are now displayed as overlay for a nicer output
- Changed the results groups output - each group has a separate DIV container with distinctible CSS classes for easier customizations
- Added a warning message for the index table settings to not close the browser tab when the indexing is active
- Fixed an issue with the date filters
- Fixed an issue with some shortcodes for the Index Table
- Most cache related files are now moved from asp_upload to asp_cache folder
- PDF results text preview length is now correct
- asp_perse_filters() memory related issue fixes
- Changed the magnifier button inner elements from DIV to SPAN (validation error fix)
- The search bar now renders in Gutenberg editor on the back-end under certain conditions
- Updated the sidebar on the back-end
- Update the font family on the back-end to Roboto and made a few visbility changes
- Reverted to a more robust json data parsing method for the frontend
- Fixed an issue with an array index for the index table cron jobs
- Changed the asp_comact HTML attribute to data-asp-compact so it no longer triggers a HTML validation error
- Fixed a file cleanup method for the asset generator
- PDF results thumbnail generator with ImageMagick. Please check
this knowledge base
for configuration. - Support for ordering by ID for posts and user results
- Synonyms and Additional keywords now support multiple keyword phrases (separated by comma)
- Changed the get_result_field(..) theme function signature, now it allows adding the $post argument as second parameter
- Custom field filters - Now properly support ACF Relationship fields
- Fixed an issue with the index table search and The events calendar plugin
- Fixed an issue with the media file search, where the content field was not correctly fetched when the PDF contents were present
- Arabic diacritic recognition for index table engine has been improved
- Fixed an issue with the Elementor "load more results" feature
- Added an accessibility menu under the Advanced option to control some of the aria-labels, which were not possible to change until now
- Keyword highlighter - now works for the search results page too
- Keyword highlighter - now instead of using local storage, the asp_highlight query argument is used. This better determines where to use the highlighter, and can be used even globally.
- Delete button on the back-end fixed
- Added a missing aria-label to the search button
- Added an CSS unset for min and max height for the input fields
- Fixed an issue with the index table search, where in some cases the results vanished due to a query argument issue with WP_Query
- Fixed an issu with the stylesheet loading by forcing the correct protocol
- Index Table: better taxonomy term indexing, short taxonomy term names are indexed as whole words as well for more accurate matches
- Moved the aggregated asset location to the wp-content/cache/asp/ folder for better server compatibility
- Further script size and loading queue optimizations ~12% savings on default configuration
- Fixed an issue with the index table search and the generic filters
- Custom field filters - "range inputs" filter type. Two numeric input fields for price etc.. (see documentation)
- Filtering of Post Type Archive pages is not supported
- Number format for advanced title/content fields, with arguments "type=number", "decimals=0", "decimal_separator='.'", "thousand_separator=',' (see documentation)
- Hook for output font CSS: asp_fonts_css
- Custom Field Filters - Added "is_post_id" argument to the {get_fields} feature, so that custom fields holding post IDs as values can now display the post title as the filter label. Useful with ex.: The Event Calendar Venues etc.. (see showcase)
- "is_post_id" as adavnced title/field argument - custom fields holding post IDs as values can now display the post title as the filter label. Useful with ex.: The Event Calendar Venues etc.. (see documentation)
- Auto-scroll: When clicking on a results and then the browser back button, then the plugin will automatically scroll back to the clicked result element
- Added 3 new themes Rounded Dark Blue, Rounded Light Blue and Rounded Lilac
- Removed the input[type=submit] from the search form and changed the magnifier element to a button so it is better targetable with the tab key.
- Changed the checkbox "tick" elements from labels to divs for better SEO
- Fixed an issue where the plugin would appear "abandoned" in WordFence, when the update information is not available
- When using the Media Service for PDF indexing, the plugin now can display the description (from the PDF content) in the live results list. Keyword highlighter can will work with this text.
- Fixed an issue with ACF multiselect value indexing
- Fixed an issue with SG Optimizer - where the plugin CSS was not parsed by the CSS combine feature
- Fixed an issue with the search box alignment
- Corrected the search query order according to the actual results order set on the plugin back-end.
- Fixed an issue with the "try this" keywords - they no longer trigger the live search, when the trigger is turned off
- Fixed an issue where the results container was not initialized in time
- OutputBuffer class - isolate OB from the CSS manager code, add hooks to allow access to ob output
- Improved asset loader - now the plugin auto-detects where the Fonts/Styles/Scripts should be added. This will save a lot of overhead on pages where the plugin shortcode is not present.
- Permanently removed the old legacy scripts - reducing the plugin size greatly
- Further improved script loading method
- Index Table - now indexes the post type singular and plural names (at title priority). Ex. the user types in "products" then items from the products post type are prioritized
- Advanced title and content fields - Made them bigger for convenient editing
- Removed some unused image assets
- WCAG Improvements - Checkbox filters "label" tag changed to "DIV" instad, so the WCAG readers don't get confused. Search form now also has a role=search added
- Fixed an issue with the index table attachment search - where the post type search settings have affected the attachment search settings
- Fixed an issue with the search style when displayed in an Elementor pop-up. In case of style issues please check the styling issues documentation for a solution
- Improved some string conversion methods
- Fixed a potential bug with the CSS loader
- Fixed an issue with the index table, when non-scalar ACF values triggered a warning during the index
- Corrected the compact box width calculation
- Corrected the compact layout container floating, when using the "absolute" position
- Corrected the changelog URL
- Fixed some namespace related issues
- Fixed an issue which triggered an 500 error message when using Visual Composer (or WPBakery page builder)
- Fixed an issue with the Image Parser
- Better CSS style loading method selection - Optimal (Inline + File) | Everything File | Everything inline
- The live search filter now works on the WooCommerce shop page
- The live search filter now works on the Category, Tag and any other Taxonomy archive pages
- Greatly improved the title keyword suggestions and autocomplete algorithm
- Removed the deprecated old scrollbar script
- Better search style loading - by default, the customized search styles are now printed as inline styles. This saves a lot of bandwith, when having multiple search instances. CSS/JS minify plugins are commonly used, and this method gives them better control over each page style.
- Changed the autocomplete field for a negative tabindex, so it is excluded from keyboard navigation
- Removed the Async CSS loader - it was not effective for proper pageview scores and CDN/Cache plugin providers have far superior solutions
- Reorganized Compatibility Panel
- For better compatibility, changed the javascript response delimiters to not include "!" characters
- The URL override faute now works with the Elementor live results as well - until now, the browser address URL always changed, now it does not, until it is enabled​
- Self-hosted all the images - there was an issue reported with slow loading.
- "Show more results" text now supporting the {phrase} variable
- Major refactoring and reorganizing of the core server side code to meet higher PHP coding standards
- Horizontal layout - now correctly displays the result descriptions, whenever images are not available
- Fixed an issue with the japanese ideographic space character
- Improved the inline script loader for the search instances, so that cache plugins better recognize the difference of the ouptut by pages
- Fixed an issue with the BuddyPress xprofie field otpion
- The post type filter now allows a "select all/any" option for drop-down and radio values
- Compact box layout - can be separately enabled for each device type
- Improved the vertical scrollbar visibility
- Fixed an issue with the visual keyword highlighter
- Fixed an issue with the vertical navigation events not loading properly
- The advanced title and content fields are now registered to string translations
- Fixed an issue with the elementor products filter, when the initial pagination would not work correctly
- Index table - Improved the HTML parser
- Added some missing translations - Thank you Domi for pointing them out
- Index Table: Improved custom field tokenization process
- Synonyms - import from CSV files is now possible
- Improved the global event handler script
- The updates message now includes a link to the license activation page
- Scrollbar script disabled by default - using modern browser scrollbar styling instead
- Greatly improved the loading of the single font asset
- Removed some CSS overhead on default options
- Fixed an issue with the ajax mutation detector for the init script
- Fixed an issue with the REST API search results count
- Fixed an issue with the auto updater script
- Fixed an issue with the compact box closing script, when the search text was also visible
- Fixed an issue with the isotopic results URL recognition
- Fixed an issue with fixed layouts for the compact box layout
- Init method - Using intersection observer for the init script instead of the more costly viewport check feature
- Hovering results and settings box positioning - fixed an issue, where the body margin was incorrectly subtracted from the position, when body transformation was not present
- Reduced the size of the inline scripts printed
- Fixed an issue where the suggested keywords did not trigger the search
- Now each search bar is only initialized when visible on the main window, to improve processing performance. This feature can be turned off here.
- Improved the browser pushstate (back and forward) button behavior
- Now every existing installation is switched to the new, more powerful non-legacy scripts. The legacy scripts are now deprecated, and will be removed in the next major release.
- Changed the main menu slug to asp_main_menu, as it was missing from a specific installation (maybe a conflict with another plugin?)
- Fixed a PHP 7 compatibility issue with the REST api
- Fixed a few Elementor filtering related issues
- Fixed an issue with the search bar width calculation
- ​Results information box - the pseudo-variables like {phrase} now can be used multiple times in the text.
- Fixed an issue with accented characters in the keyword highlighter feature, now accented and non-accented versions should be highlighted correctly
- Fixed an issue with the index table HTML extractor
- Fixed an issue with the DOM manipulator script
- Fixed an index table issue, where the results page would be slower, due to incorrect processing of large result sets
- Fixed an issue with the attachment search with the regular engine
- The index table now properly indexes attachments when uploaded
- Fixed an issue with the results width for mobile and tablet devices
- PDF parser - fixed an issue with possible HTML tag recognition
- Fixed the font loader, now only loads them when needed
- Fixed an issue with ACF select filters, where the numeric field keys may not be correctly fetched
- Improved the conditional script loader
- Fixed an issue with the results auto scroll feature
- z-index issue fix for fixed search layouts
- Fixed an issue with the google analytics pageview tracker integration
- The results information box text container is now a DIV instead of P tagh, because then some HTML is not supported in P tags
- Update the live results URL and do a push state for both Elementor and Results page live loaders
- ​Media Service - An external File Indexing service for the index table engine with a Free subscription tier. The Media Service is an external feature to handle very accurate file content indexing for text type, PDF, Office Word, Office Excel and Office Powerpoint files.
- Removed an old deprecated IE compatibility code
- Fixed an issue with the taxonomy term filters, when the shortcode is used, and the filters are set to invisible
- Select2 (select and multiselect filters with search feature) script issue fix - Now allows empty values, when nothing is selected
- Index table shortcode parser improvements
- Fixed an issue with the offset calculation, when the document body has transformation on it
- Added an argument for WP_Query queries named "asp_override" - when set to false, the WP_Query will be explicity excluded from the search override
- Added better support for ACF post_object type fields for the frontend filters
- Preparations for a future version 4.22 feature - Media Service Subscription - an external document parser feature for the index table engine with a free subscription tear.
- Fixed an issue with the visibility detection on the new scripts
- Fixed an issue with automatic scrolling feature (to the results, when the search is finished)
- Fixed an offset calculation issue
- Fixed an issue with saving Divi builder posts when the plugin is active
The media attachment mime type selection has been reworked to a much simpler option, with a fallback to enter the mime types manually.​
- Fixed an issue with the index table for some custom fields
- Fixed an issue with the legacy script and isotopic results
- Fixed an issue with the automatic hiding option
- Fixed the results page handler - now the post-process script only affects the currently viewed items, instead of all of them, improving the loading time greatly.
- Post dates filter - Latest/Earliest post dates not respect attachment dates as well Add an item
- Inline script loader - now tries to prevent reloading of inline scripts when the theme uses ajax loaders
- Removed the live Changelog/Knowledge Base/Support page links to save bandwidth as well as unneccessary requests
- Fixed a container width issue when using multiple search bars
- Fixed an issue with results ordering, when accented characters were present
- Better Tabless shortcode parsing
- Isotopic overlay effects changed to pure CSS animations
- Magnifier trigger live search - now respects the minimum character count
- Index table and generic filters fix
- Index Table - ACF custom field indexing improved for drop-down, checkbox, radio and other select type fields
- Increased the modifier by 100 for the "more results" feature to allow displaying 1000x more results from the original 10x (of the results limit)
- Fixed an issue with the image parser
- Fixed an script issue, where removing the animations would casue sometimes problems on some browsers
- Ordering - The ordering of the results (both live and results page) are now correct when using the primary and secondary logic
- Fixed a results live loader script issue
- Image parser - now gets the product parent image when the product variation has no image
- Added an option to focus the search bar on initial page load
- Hidden filter labels now does not include the text
- Substring creation on live results - now the " ..." suffix is displayed correctly in all cases.
- Index Table - Hebrew un-vocalization is now applied when Hebrew text is detected
- Index Table - Fixed inline script and style removal from the indexing process, improving the indexing of contents from block editors (like Elementor, Oxygen builder etc..)
- Search order is now correct when using index table post type and attachment results
- Isotopic results - Now work correctly with top and bottom navigation present at the same time
- Custom field date filters - now shows correct value when used using a selected date
- Index Table engine - correction for previous release for some special character exclusions
- Index Table engine - improved title matching mechanism
- Custom field filters - {get_values} now accepts "order", "exclude", "post_type", and "post_status" attributes - to only fetch existing values from given post types, and also allowing exceptions. Check the documentation for more information.
- The get_asp_result_field(..) function now returns the same exact title, description and link fields as in the live results list in every case
- Compact box layout - auto focus is now enabled when the search icon is clicked (can be turned off)
- Elementor - load more button and infinite scroll now works on Elementor Posts widget filters
- Browser back button - now the plugin tries to scroll back after displaying the results to the last clicked item.
- Fixed the load more feature for the non-legacy scripts
- Added a missing post tags logic
- Fixed an issue with BuddyPress content search on multisite environments
- Image parser - now handles array (of images) values from custom field sources
- The close (X) button click now triggers the input focus
- Statistics - now logging non-live queries correctly
- Index Table - Improvements in lower/upper case conversions of multibyte characters
- Index Table - Better junk removal in tokenization process
- Input autocomlete - now correctly scrolls when the input field is scrolling (long text input)
- Search override - now sets the post__in argument in case the results being further filtered by other plugins on the results page
- Divi results page filter - now should properly trigger and work together with ajax search pro
- Safari browsers - Fixed a "bleeding" corner issue on the input, where a single pixel from the border radius was visible over the parent element
- Mobile Safari on IOS 15.1+ - Fixed an issue where a white "blob" is hovered over the input field
- Attachment search settings - wrong items shown when regular/index table selected
- Result container position issue fixed with the new scripts, when a % value was used in the results container width
- Excel and Smalot PHP parser libraries updated to support PHP 8+
- Improved Excel Table indexing
- Now the image size argument applies to search results images from custom fields
- Now the search results and settings position is correct when contained in an element with transition properties
- Polylang compatibility fix
- Index table attachment search issue fixed
- Date filters - now possible to select the earliest and the latest post dates as the default filter values
- Ajax Pagination on Elementor widgets
- Browser back button - now works with Elementor results
- Index table - fixed an issue with title indexing, where the post title was 0 characters long
- Fixed the auto populate with the legacy scripts
- "use strict" on all javascript files
- Eleminated all inline CSS and moved to a separate file instead
- Eleminated all jQUery direct handler calls and replaced with .on(..) and trigger(..) on the back-end scripts.
- Auto-populate duplicates (when using random order) + more results feature are no longer present
- Default search cache interval changed to 30 days instead of 1 day
- Fixed an issue with the slider and range sliders init script when used in a cloned pop-up
- Datepicker now correctly sets the value when clicked the back button on mobile safari browsers
- The plugin core scripts were completely reworked to work without jQuery dependency (YAY for maximum Google Pagespeed insight scores). Only the select2 and the datepicker scripts require jQuery. The legacy scripts will be maintained until 2022/Q1. If you had the plugin installed previously, the legacy scripts are still remain in use. More information about switching can be found in the javascript compatibility documentation.
- Keyword exceptions now properly work on multisite setups with index table search
- Improved post author name indexing (first, last, nickname and display names)
- Improved index table relevance on post titles containing apostrophe type characters
- Google Lighthouse optimizations - greatly optimized script loading method, vital CSS optimizations, and font loading optimizations
- Corrected the conditional asset loader
- Polylang issue fixes - now the results page should respect when the polylang compatibility is turned off
- Index Table - added option to update index when post meta is changed (OFF by default)
- Elementor - Magnifier & Return actions - Now redirect to first result with elementor
- Elementor - when hitting the "reset" button on clearing the search bar or the filters, it should reset back to the original state.
- Browser back button - now works without entering a phrase
- Removed very old browser compatibility option, which was causing issues
- Many of the legacy scripts also reduced in size
- PHP 8 Compatibility tests and fixes
- Term meta image parser corrected
- Fixed a potential security issue with the search import/export feature (CVE-2021-29654 by Synacktiv, Jérôme Mampianinazakason and Julien Egloff)
- Custom field filters - checkbox values are now set correctly when redirected to the results page
- Keyword highlighter - now works with accented characters as well
- Importing from lite - updated to the latest version
- Fixed a possible XSS vulnerability
- Random results order now works with the index table engine
- Fixed an issue with elementor widget paginations
- Fixed an issue with Divi builder loading
- The swipe handler script has been changed to a much better one
- Mobile IOS issue fixes - isotopic results now working properly
- Autocomplete - trigger after N characters option
- Mobile options - menu auto focus on opening (jQuery selector)
- Keyword highligher - now works with live results loader and elementor widgets
- Support for Excel 5 (.xls) documents for the index table parser
- Mobile - Hiding the search settings is now possible on mobile screens without forcing the "hover" layout
- Magnifier and Enter "do nothing" action when Elementor filter
- Regular engine - exact title relevance fixes for matches where the search phrase completely matches the title
- Index table engine - filtering with a certain configuration with an empty phrase now works correctly
- String translation management with polylang - now registers the all strings correctly via the ajax requests
- WPML link fixes - bypassing the faulty wpml_permalink hook
- Auto updater - now uses a different method to fetch the updates, should work on more installations correctly
- Isotopic results - now correctly open on IOS devices
- Multisite - Matching post ID issues fixed
- Fixed an issue where isotopic results not redirecting correctly
- Improved the scroll feature for result page keyword highlighter
- Fixed an issue with the aspFilter->add method
- Scroll to results feature -> an offset value (+/-) in pixels can be set
- Custom field string translations - now the custom field values can be also translated via WPML and Polylang string translations
- Single result page keyword highlighter -> an offset value (+/-) in pixels can be set
- asp_result_groups filter hook - to access grouped result items and group titles
- wp_localize_script - some uses of that function replaced with an internal solution, to prevent cache plugin incompatibilities
- Custom field filters - automatic field storage type detection - to avoid issues, where fields are stored as serialized array, and the values may need to be surronded by quote. This mostly affects Checkbox & Select type filters with an exact matching field logic - these should work as expected now.
- Index table - exact title query now works correctly with all keyword logics
- Fixed any known possible jQuery.migrate deprication warnings
- More results feature - Redirecting to elementor results page now works correctly
- Results page -> correct URL for attachment results
- Index table optimization - removed unused columns, and changed some column sizes for much smaller ones
- Context finder function - fixed an issue when the minimum word length is below the first phrase word lenght, the function returned the incorrect (long) string
- Better backwards compatibility version detection feature
- Scroll to results - a brief viewport check before scrolling to the results was implemented
- Russian quotation marks for exact matches are now recognized: «»
- Result title CSS - changed the layout to block so the line-height attributes are no longer inherent
- Search and Reset button filter CSS fixes
- Advanced title and content fields: maxlength attribute now works on {titlefield} and {descriptionfield} as well
- Category exclusion/inclusion options - Now double checks for removed taxonomies before saving
- Synonyms - Export now generates .json files instead of .txt for better compatibility
- Statistics dashboard now working correctly
- Visual bug: a debug query was removed from the earlier release
- Ordering - by menu order
- Individual Priorities - now work with attachment results
- Index table - JSON encoded custom field values are now better indexed (objects, arrays etc..)
- wp.hooks support in plugin script - allows using filter and action hooks for many javascript variables within the search script
- Option to exclude password protected posts (both regular and index table)
- asp_query_cpt, asp_query_indextable, asp_query_attachments, asp_query_users, asp_query_comments, asp_query_terms hooks to access the query text [documentation]
- "maxlength" attribute for advanced title and content fields
- WordPress 5.6 compatible
- Exact matching - Full exact matching added (mathing a field exactly, from start to the end)
- Index Table - Exact title matches have better relevance
- Preparation code for 5.0 update
- Custom field filters - {get_values checked} pseudo now works with dropdown and radio filters as well
- Image parsing on multisite - now automatically tries to fetch the images from across blogs on the results page
- Styling issues on index table panel fixed
- ​asp_load_js & asp_load_css hooks - allows turning off the JS and CSS asset loading programatically
- Horizontal results - scrollbar can be disabled
- Reset button now properly resets the input field
- Oxygen builder compatibility - now the plugin detects the page builder editor, and when it's active, the plugin scripts are not loaded to preserve performance.
- Polylang - Now the search redirection URL is correct, when the homepage URL is set to a static page
- The search will scroll to the first "This field is required" section when it is not visible on the screen.
- Reset button now correctly sets the default state of the checkbox filters (previously unchecked)
- Statistics database keyword suggestions - now the correct number of suggestions are returned
- Elementor live search - Now can be logged as a pageview in the google analytics tracker.
- Fixed an Issue with the statistics dashboard
- Removes [embed] shortcodes and embed Gutenberg blocks from live results content
- Custom field filter - {get_values checked} pseudo code working properly now
- Custom field filter - drop-down filters AND logic now works if the values are stored in separate fields with the same field name
- Updater - The "View info" and the "Changelog" links working now
- Duplication check and fix script now working correctly
- Description missing from grouped results issue fix
- Option to display taxonomy term result descriptions Layout -> Results layout >> Results fields
- Highlight search keyword on the result pageafter clicking on the result
- Layout -> Results layout >> Results fieldsAdded separate fieldset for CPT, Terms, Attachment and User results
- Advanced Title and Content fields -> Now all versions moved to the advanced options panel
- Custom User resutls URLSuports nicknames as well
- aspFilter->add method now supports adding a filter value to a specific position
- Results page Live loader issue fixes
- Fixed issues with the singleton class structures: https://wordpress.org/support/topic/feature-requests-177/#post-13145770​
- asp_show_more_url hook now applies on mobile as well
- Elementor sticky menu issues fixed
- WordPress 5.5 Compatibility tests
- Security fix: Potential XSS issue fixed on the back-end
- Security fix: Potential frontend SQL injection fixed
- WPML permalinks - now forced to get the correct one in very rare cases
- JS - elementor live filter applies jetpackLazyImagesModule() to fix JetPack lazy loaded images
- Autocomplete and keyword suggestion improvements when using post titles and taxonomy terms
- Image Parser - Now tries to fetch from more image attributes, as well as div elements with thumbnail and other attributes
- Polylang String Translations fixed
- Hidden search box & Elementor filter conflict fixed, the results box no longer appears
- Elementor product filter (displaying product categories) - now correctly only displays products and nothing else
- Search statistics trigger & Elementor live search are working correctly now
- Conditional CSS loader - Singular post types are now correctly excluded/included
- Autocomplete fix, when response body is bloated with emtpy lines
Last modified 1mo ago