Hi @modeman,
Thanks for reaching out!
My plugin is designed to work seamlessly with the default WooCommerce product loop. This default loop includes essential hooks, which I utilize to insert the necessary wrapper. When a filter is applied, the plugin updates results by inserting them into this wrapper. Since you are using a custom loop, the required wrapper is missing, and as a result, the plugin cannot update the results with AJAX.
To resolve this problem, you need to structure the product query using the necessary hooks, as shown below. This allows my plugin to insert the required wrapper.
if ( woocommerce_product_loop() ) {
/**
* Hook: woocommerce_before_shop_loop.
*
* @hooked woocommerce_output_all_notices - 10
* @hooked woocommerce_result_count - 20
* @hooked woocommerce_catalog_ordering - 30
*/
do_action( 'woocommerce_before_shop_loop' );
woocommerce_product_loop_start();
if ( wc_get_loop_prop( 'total' ) ) {
while ( have_posts() ) {
the_post();
/**
* Hook: woocommerce_shop_loop.
*/
do_action( 'woocommerce_shop_loop' );
wc_get_template_part( 'content', 'product' );
}
}
woocommerce_product_loop_end();
/**
* Hook: woocommerce_after_shop_loop.
*
* @hooked woocommerce_pagination - 10
*/
do_action( 'woocommerce_after_shop_loop' );
} else {
/**
* Hook: woocommerce_no_products_found.
*
* @hooked wc_no_products_found - 10
*/
do_action( 'woocommerce_no_products_found' );
}
If you follow this and the issue persists, please let me know, and I’ll be happy to help further!