default_scope expects a block as its sole argument

fixes #5799
Eagerly load product images and prices using preload.

(i.e. explicitly using a separate query) so the orders are respected even when
the product search is conditioned on an included association.

fixes #5798