для изменения списка товаров в категории, нужно изменять шаблон product-list.tpl
в product-list.tpl сразу после
{foreach from=$products item=product name=products }
вставить
{if strpos($product.id_image, "default") !== false} {continue} {/if}
но если используется стандартная тема, то возникает проблема в отображении товаров, возникают "пробелы"(пустые места) вместо товаров.
Это возникает в темах в которой используются классы для отображения списка товаров (например last-in-line - последний элемент в ряду), расчет идет от общего количества элементов $product в $products, нужно удалять элементы массива у которых нету изображений, для корректного отображения.
Unset в Smarty это больная тема, потому или использовать override или кто то уже решил проблему unset в Smarty...