'Woocommerce filter by price

I've been trying to show products in the shop page of my woocommerce store, when I use the normal shortcode method and try to use the filter by price function, it doesn't work at all.However, when I use the function woocommerce_content() to output the products, the filter works without any issues.Is there anyway to make sure the filter works with "echo do_shortcode()" method? Also, woocommerce_content() method outputs all the products and I couldn't find a way to only output sales or most most purchased products? Is there a way to output a specific type of products while using woocommerce_content() ?

    <?php echo do_shortcode('[products limit=4 columns=4]'); ?>
    <?php get_sidebar();
      // or do_action('woocommerce_sidebar');
     ?>


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source