Hello,
The problem: The way that category or tag pagination links are built causes links from secondary pages to often break. The “All” link will always return a 404.
Why it’s happening
In result-count.php, ?show_products=x is appended to the current URL:
<a class="show-products-link" href="?show_products=24">24</a>/<a class="show-products-link" href="?show_products=48">48</a>/<a href="?show_products=<?php echo $total;?>"><?php _e("All", "swiftframework"); ?></a>
However, if the current page is not the first page, the “All” link will cause all results to show in the first page (since the show_products number is applied to the query, and all of those products are put on the first page).
Example:
Take a sample url: https://hookandloom.com/rugs/taupe/page/2
The url for the “All” pagination button is https://hookandloom.com/rugs/taupe/page/2/?show_products=42
In this example, since all 42 products are displayed on page 1, this means page 2 is a 404 from this link
Solution: The show products links should remove the page parameter from the URL rather than just appending “?show_products=x” to the current URL.
-Aaron