Недавно был получен заказ на доработку ленты новостей Virtuemart от магазина "Дракопанда - книжная лавка китаиста" (хм, тоже панда :) ).
Дело в том, что в стандартной ленте новостей Virtuemart всегда выводятся обычные ссылки типа "/index.php?option=com_virtuemart&page=shop.browse&category_id=5&Itemid=24". Независимо от того включены у Вас в Joomla SEF ссылки или нет.
С разрешения заказчика покажу как все привести к единому знаменателю.
Открываем файл, который выводит ленту новостей - \administrator\components\com_virtuemart\html\shop.feed.php
В 192 строке вместо
$product_link = $sess->url( $GLOBALS['mosConfig_live_site'].'/index.php?product_id='.$product['id'].'&page=shop.product_details&category_id='.$product['category_id'].'&flypage='.$product['category_flypage'], true );
пишем
$product_link = JRoute::_('index.php?option=com_virtuemart&product_id='.$product['id'].'&page=shop.product_details&category_id='.$product['category_id'].'&flypage='.$product['category_flypage'] );
Далее.Вместо
$item->link = vmHtmlEntityDecode($product_link); $item->source = $product_link;
пишем
$item->link = vmHtmlEntityDecode($GLOBALS['mosConfig_live_site'].$product_link); $item->source = $GLOBALS['mosConfig_live_site'].$product_link;
Не забываем перед проверкой очистить кэш - папка \cashe , в ней все файлы типа productfeed_RSS2.0_catid0.xml
Вот и все.