Power Filter
Advanced filtering solution for WordPress and WooCommerce
by Power Filter Team · github.com/0000wei/power-filter · website
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/0000wei/power-filter/archive/refs/heads/main.zipAdvanced filtering solution for WordPress and WooCommerce
Power Filter is a powerful WordPress plugin that provides everything you need to filter any content by any criteria. Inspired by Filter Everything PRO, this plugin offers comprehensive filtering capabilities for your WordPress site.
Features
Core Filtering Features
- ✅ Filter any post type (posts, pages, WooCommerce products, custom post types)
- ✅ Unlimited filter sets
- ✅ Filter by taxonomies (categories, tags, custom taxonomies)
- ✅ Filter by custom fields (including ACF fields)
- ✅ Filter by date, author, and search keywords
- ✅ WooCommerce-specific filters (price, rating, stock status)
Filter Display Options
- ✅ Checkboxes
- ✅ Radio buttons
- ✅ Dropdowns (select/multi-select)
- ✅ Labels/Tags
- ✅ Color swatches
- ✅ Image swatches
- ✅ Range sliders
- ✅ Range inputs
- ✅ Date range pickers
- ✅ Star ratings
User Experience
- ✅ AJAX filtering (instant results without page reload)
- ✅ Multiple submission modes (auto or button click)
- ✅ Active filter chips (breadcrumbs)
- ✅ Built-in search box
- ✅ Sorting widget
- ✅ Horizontal or vertical layouts
- ✅ Mobile-friendly with popup/drawer modes
SEO Features (NEW!)
- ✅ SEO-friendly filter URLs
- ✅ Custom page titles for filter pages
- ✅ Meta descriptions
- ✅ XML sitemap for filter pages
- ✅ Canonical URLs
- ✅ Schema.org structured data
- ✅ Open Graph tags
- ✅ Twitter Cards
- ✅ Yoast SEO compatibility
- ✅ Rank Math compatibility
- ✅ Multilingual hreflang tags
Advanced Caching (NEW!)
- ✅ Object Cache support
- ✅ Transient-based caching
- ✅ Cache statistics
- ✅ Cache warming
- ✅ Automatic cache invalidation
- ✅ Group-based cache management
Elementor Integration (NEW!)
- ✅ Filters widget
- ✅ Results grid widget
- ✅ Sorting widget
- ✅ Active chips widget
- ✅ Full Elementor styling controls
Developer Features
- ✅ Shortcodes for easy integration
- ✅ Widget support
- ✅ Hooks and filters for customization
- ✅ Import/Export filter sets
- ✅ Duplicate filter sets
- ✅ PHPUnit test suite
Installation
Manual Installation
- Download the plugin zip file
- Go to WordPress Admin > Plugins > Add New
- Click "Upload Plugin" and select the zip file
- Activate the plugin
Via FTP
- Upload the
power-filterfolder to/wp-content/plugins/ - Activate the plugin through the 'Plugins' menu in WordPress
Composer
composer require power-filter/power-filter
Usage
Creating a Filter Set
- Go to Filter Sets > Add New
- Enter a title for your filter set
- Select the post type to filter
- Add filters using the "Add Filter" button
- Configure each filter (type, source, view type, options)
- Configure display settings
- Save the filter set
Displaying Filters
Using Shortcodes
// Display filters
[power_filter set_id="123"]
// Display results
[power_filter_results set_id="123"]
// Display sorting
[power_filter_sorting set_id="123"]
// Display active filter chips
[power_filter_chips set_id="123"]
Using Widgets
- Go to Appearance > Widgets
- Drag "Power Filter" widget to your sidebar
- Select the filter set and configure options
Using Elementor
- Edit a page with Elementor
- Search for "Power Filter" widgets
- Drag and configure the widgets
Supported Filter Types
| Type | Description |
|---|---|
| Taxonomy | Filter by categories, tags, or any custom taxonomy |
| Custom Field | Filter by post meta/ACF fields |
| Date | Filter by date ranges |
| Author | Filter by post author |
| Search | Keyword search |
| Sort | Sorting options |
View Types
| View | Best For |
|---|---|
| Checkboxes | Multiple selections (categories, tags) |
| Radio Buttons | Single selection (sort order) |
| Dropdown | Space-saving, many options |
| Labels/Tags | Visual selection, few options |
| Color Swatches | Colors |
| Image Swatches | Images/patterns |
| Range Slider | Prices, numeric ranges |
| Rating | Star ratings |
WooCommerce Integration
Power Filter works seamlessly with WooCommerce:
- Price filter - Built-in price range filtering
- Rating filter - Filter by star ratings
- Stock status - Show in-stock/out-of-stock
- Product attributes - Filter by any WooCommerce attribute
- Variation filtering - Filter by product variation values
Developer Hooks
Actions
// Before filter is applied
do_action('pf_before_filter', $set_id, $filters);
// After filter is applied
do_action('pf_after_filter', $set_id, $query);
Filters
// Modify filter types
add_filter('pf_filter_types', function($types) {
$types['custom'] = 'Custom Filter';
return $types;
});
// Modify query arguments
add_filter('pf_query_args', function($args, $set_id) {
// Customize query
return $args;
}, 10, 2);
Running Tests
# Install dependencies
composer install
# Run PHPUnit tests
composer test
# Run code linting
composer lint
# Fix code style issues
composer lint-fix
Frequently Asked Questions
Can I filter custom post types?
Yes! Power Filter supports any public post type, including custom post types.
Does it work with page builders?
Yes, you can use shortcodes with Elementor, Divi, WPBakery, and other page builders. Native Elementor widgets are also available.
Is it compatible with WooCommerce?
Yes, Power Filter has built-in WooCommerce support with special features for products.
Can I customize the appearance?
Yes, you can customize CSS or use template overrides in your theme.
Performance
- Caching: Built-in object cache and transient support
- Optimized queries: Batch SQL for filter counts
- Lazy loading: AJAX pagination without full page reload
- CSS/JS minification: Assets are optimized for production
Security
- SQL injection protection: All queries use
$wpdb->prepare() - XSS protection: Proper output escaping throughout
- CSRF protection: Nonce verification on all forms
- Input validation: Sanitization of all user inputs
- Permission checks: Capability verification for admin actions
Changelog
1.0.0
- Initial release
- Core filtering functionality
- WooCommerce integration
- SEO features
- Mobile support
- Elementor integration
- Advanced caching
- Schema.org support
Credits
Developed based on the feature set of Filter Everything PRO.
License
GPL v2 or later