
In a recent Business Bloomer Club discussion, a WooCommerce store owner managing 50,000 products sought advice on the best-performing Ajax filtering solution for their extensive catalog.
Traditional filters such as YITH proved too slow, highlighting the need for a more robust, scalable approach. Various community members shared insights on different solutions, including plugins and custom setups, each with unique strengths suited to high-product-volume stores.
Here’s a breakdown of the options and best practices discussed.
Option 1: ElasticPress and ElasticSearch for Scalable Performance
Many experts recommend ElasticSearch paired with the ElasticPress plugin as a high-performance solution. ElasticSearch, typically seen as a search engine, also excels at handling large-scale faceted filtering and complex aggregations, such as categories, price ranges, and taxonomies. ElasticPress integrates seamlessly with WooCommerce, creating a more efficient query process and taking load off the MySQL database.
Key Benefits
- Improved Speed and Reduced Load: Offloads data from MySQL, allowing it to handle critical operations (like orders) while ElasticSearch manages queries.
- Advanced Filtering Capabilities: ElasticPress offers widget-based faceted search for a seamless customer experience.
- Self-Hosted or External Options: You can host ElasticSearch on your server or use a managed ElasticSearch service.
Considerations
Setting up ElasticSearch may require technical knowledge and additional server resources, but it’s ideal for high-traffic stores and large product volumes.
Option 2: FacetWP for Comprehensive Filtering
FacetWP is a popular choice for many WooCommerce stores, known for its versatility in handling taxonomies and custom fields. However, on a store with 50,000 products, it may not be as performant as ElasticSearch but can still be a viable option with some optimization.
Key Benefits
- Ease of Integration: Works seamlessly with WordPress and WooCommerce, without requiring extensive technical setup.
- Customizable UI: Provides an easy-to-use, flexible interface for creating custom filters.
Considerations
FacetWP may perform slower with very large datasets unless paired with optimized hosting, caching solutions, or specific filter configurations.
Option 3: Algolia for High-Speed Search and Filtering
For stores prioritizing instant search and filtering, Algolia is a powerful external solution with impressive speed and customizability. While primarily a search engine, Algolia supports facets and filtering.
Key Benefits
- Instant Response Times: Known for high performance and fast search, suitable for large inventories.
- Advanced Customization: Supports tailored search experiences and offers in-depth analytics.
Considerations
Algolia requires a custom integration, especially for WooCommerce. While there is a WordPress plugin, a fully optimized setup may require a developer.
Additional Tools and Plugins
Other tools mentioned include:
- BeRocket WooCommerce Ajax Products Filter: Offers flexible filtering for WooCommerce but may require testing for speed on large inventories.
- SearchWP: Good for smaller WooCommerce sites but less suited for stores with 50,000+ products due to local indexing limits.
Final Thoughts
Each solution has its own benefits depending on store size, product complexity, and technical resources. For high-scale WooCommerce sites, ElasticPress with ElasticSearch is often the top recommendation, but alternatives like FacetWP or Algolia also bring significant advantages depending on the store’s specific requirements. With the right setup, each option can help create a faster, smoother filtering experience for customers browsing large WooCommerce catalogs.