БЛОГОДЖУМЛА - БЛОГ О ДЖУМЛА

SEF-ссылки на товары в RSS ленте новостей Virtuemart

  • Категория: Virtuemart 1
  • Автор:
  • Просмотров: 6694

 Недавно был получен заказ на доработку ленты новостей 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

Вот и все.

Back to top