This is an old revision of the document!
Начиная с версии 6.6.3 в HostCMS появилась возможность подмены URL для товаров, сделать это можно с помощью следующего наблюдателя.
Создаем файл наблюдателя:
<?php defined('HOSTCMS') || exit('HostCMS: access denied.'); /** * Подмена URL для товара. * * Подключение наблюдателя: * * // Подмена URL для товара. * Core_Event::attach('shop_item.onBeforeRedeclaredGetXml', array('Shop_Item_Observer_SubstituteUrl', 'onBeforeRedeclaredGetXml')); * * @author KAD Systems (©) 2017 * @date 04-04-2017 */ class Shop_Item_Observer_SubstituteUrl { /** * @param Shop_Item_Model $oShopItem * @param array $aArgs * @return void */ static public function onBeforeRedeclaredGetXml(Shop_Item_Model $oShopItem, array $aArgs) { $oShopItem ->addForbiddenTag('url') ->addEntity( Core::factory('Core_Xml_Entity') ->name('url') ->value('/some_url/') ); } }
В bootstrap.php:
// Подмена URL для товара. Core_Event::attach('shop_item.onBeforeRedeclaredGetXml', array('Shop_Item_Observer_SubstituteUrl', 'onBeforeRedeclaredGetXml'));
Решение работает также для групп товаров, инфоэлементов и инфогрупп.
Страницу создал Максим Засорин 03.04.17 в 17:04