I'm planning a WooCommerce plugin which should override the default shop page "product grid" with my own (a masonry grid with custom styling, pagination and filters). I see that many developers include template pages in their plugins (archive-product.php) to customize the shop loop output; is this the only way to do it? I'm asking because I would let the user to customize his grid in WP admin screen (you know, changing columns count, products per page, load-more button/infinite scroll, etc).
Thanks in advance.