Правки в стандартном модуле Вирт, при обновлении перезапишется . Выводит товары из категории и подкатегории.и без фильтрации по группе. Spoiler: первый вариант Код (PHP): $productModel = VmModel::getModel('Product'); // Start OlegK $doc = JFactory::getDocument(); $current_title = $doc->getTitle(); $db = JFactory::getDbo(); $query = $db ->getQuery(true) ->select('virtuemart_category_id') ->from($db->quoteName('#__virtuemart_categories_ru_ru')) ->where($db->quoteName('category_name') . " = " . $db->quote($current_title)); $db->setQuery($query); $category_id = !empty($db->loadResult()) ? $db->loadResult() : $category_id; $Product_group = false; VmConfig::set('show_subcat_products',true); /*if($cache and $Product_group!='recent'){ vmdebug('Use cache for mod products'); //$key = 'products'.$category_id.'.'.$max_items.'.'.$filter_category.'.'.$display_style.'.'.$products_per_row.'.'.$show_price.'.'.$show_addtocart.'.'.$Product_group.'.'.$virtuemart_currency_id.'.'.$category_id.'.'.$filter_manufacturer.'.'.$manufacturer_id; $cache = VmConfig::getCache('mod_virtuemart_product'); $cache->setCaching(1); $cache->setLifeTime($cachetime); $products = $cache->call( array( 'VirtueMartModelProduct', 'getProductsListing' ),$Product_group, $max_items, $show_price, true, false,$filter_category, $category_id, $filter_manufacturer, $manufacturer_id, $params->get( 'omitLoaded', 0)); if ($products) { vmdebug('Use cached mod products'); } }*/ // End OlegK if(!$products){ Запрос на получение родительской категории Spoiler: запрос для получения родительской категории Код (PHP): $query = $db ->getQuery(true) ->select($db->quoteName('vc.category_parent_id')) ->from($db->quoteName('#__virtuemart_categories', 'vc')) ->join('INNER', $db->quoteName('#__virtuemart_categories_ru_ru', 'rc'). ' ON ' . $db->quoteName('rc.virtuemart_category_id'). ' = ' . $db->quoteName('vc.virtuemart_category_id')) ->where($db->quoteName('rc.category_name'). " = " . $db->quote($current_title)); $db->setQuery($query); $category_id = !empty($db->loadResult())? $db->loadResult() : $category_id;