Я закончил тем, что сделал в app / design / frontend / default / имя темы / template / catalog / product / list_random.phtml
делает что-то вроде:
<?php
$_categories=$this->getCurrentChildCategories();
$_category = $this->getCurrentCategory();
$subs = $_category->getAllChildren(true);
$result = array();
foreach($subs as $cat_id) {
$category = new Mage_Catalog_Model_Category();
$category->load($cat_id);
$collection = $category->getProductCollection();
foreach ($collection as $product) {
$result[] = $product->getId();
}
}
shuffle($result);
?>
это даст вам массив идентификаторов продуктов. Вы можете просматривать их и создавать продукты на лету, используя:
<?php
$i=0;
foreach ($result as $_product_id){
$i++;
$_product = new Mage_Catalog_Model_Product();
$_product->load($_product_id);
//do something with the product here
}?>
затем создайте статический блок в cms со следующим содержанием
{{block type="catalog/navigation" template="catalog/product/list_random.phtml"}}
Наконец, в разделе Каталог-> Управление категориями выберите категорию, затем вкладку настроек отображения. Переключите режим отображения на «Статический блок и продукты», а затем выберите свой блок из выпадающего списка.
И это должно сделать это.