Shotty,
по доп свойству (я бы его не использовал, "мартышкин труд"

: создаете в магазине доп свойство типа
флажок, применяете его ко всем товарам, у нужных товаров включаете его, вставляете код в место куда их нужно вывести
<?php
if (Core::moduleIsActive('shop'))
{
$Shop_Controller_Show = new Shop_Controller_Show(
Core_Entity::factory('Shop', 1)
);
$Shop_Controller_Show
->xsl(
Core_Entity::factory('Xsl')->getByName('МагазинКаталогТоваровНаГлавнойСпецПред')
)
->groupsMode('none')
->itemsForbiddenTags(array('text'))
->group(FALSE)
->limit(5); // выводим 5 товаров
$Shop_Controller_Show
->shopItems()
->queryBuilder()
->leftJoin('shop_item_properties', 'shop_items.shop_id', '=', 'shop_item_properties.shop_id')
->leftJoin('property_value_ints', 'shop_items.id', '=', 'property_value_ints.entity_id',
array(
array('AND' => array('shop_item_properties.property_id', '=', Core_QueryBuilder::expression('`property_value_ints`.`property_id`')))
)
)
// ID дополнительного свойства
->where('shop_item_properties.property_id', '=', 62)
// Значание дополнительного свойства 1 флаг включен
->where('property_value_ints.value', '=', '1')
// сбрасываем сортировку и выводим рандомно, если не нужно можно за комментировать
->clearOrderBy()
->orderBy('RAND()');
$Shop_Controller_Show->show();
}
?>
по дате на форуме есть где то примеры, если что позже напишу сам