Не зарегистрирован
Вход
Забыли пароль?
Регистрация
Подписаться
Сэкономьте время — перед вопросом на форуме узнайте, как найти ответ быстрее
По техническим проблемам необходимо обращаться в Консультационный центр

Поиск по форуму: 

Приглашаем в блог Amiro.CMS. Регулярные обзоры, опыт, решения, практикумы.

Форум  ->   Любые вопросы от новичков  ->  oldprice

Если Вы только начинаете - пишите в этот раздел

Добавлено: 19.05.16 15:02:10 #1

Партнер


Регистрация: 24.12.14
Сообщений: 55


Обратиться по имени

Здравствуйте.

Мне необходимо на Яндекс.Маркет указывать товар с новой ценой и размером скидки (то, что на зеленом поле). Для этого мне нужно отправлять через YML и <price> и <oldprice>ю Подскажите, подалуйста, кто с этим сталкивался: в шаблон модуля что нужно вписать, чтобы в YML также отображалась и старая цена?

Заранее благодарю.



Добавлено: 19.05.16 17:17:51 #2

Партнер


Регистрация: 24.12.14
Сообщений: 55


Обратиться по имени

Коллеги, в шаблон
YandexEshopDriver.tpl
_local/_admin/templates/ExchangeDrivers/

Добавил конструкцию вида:
<oldprice>##price_original##</oldprice>
после строк <price>##price##</price>

Однако получаю в сформированном YML вместо строки с оригинальной стоимостью следующую строку:
<price>190.28</price>
<oldprice/>

хотя у данного товара изначальная цена отлична от 190.28

Подскажите, пожалуйста, как вывести оригинальную стоимость товара?



Добавлено: 20.05.16 09:14:31 #3




Регистрация: 03.07.07
Сообщений: 940


Обратиться по имени

Можно прочитать из базы оригинальную цену. Если это просто цена товара, то поле price, если цена подвида, соответственно, цену подвида.

Но лично мы используем свой модуль обмена, потому что он поддерживает все эти возможности + полноценную работу с подвидами для выгрузки / загрузки YML.



Готовые модули для Амиро - от бесплатных модулей до модулей импорта и геотаргетирования
Более 65 модулей, более 1100 внедрений модулей.
Добавлено: 20.05.16 12:14:12 #4

Партнер


Регистрация: 22.02.09
Сообщений: 472


Обратиться по имени

Для стандартного модуля я делал такое решение (в качестве цены выгружается базовая цена, выгрузка с подвидами не тестировалась):
В common_functions.php:
AMI_Event::addHandler('on_data_exchange_export_item', 'cstHandleDataExchangeExportItem', AMI_Event::MOD_ANY);
function cstHandleDataExchangeExportItem($name, array $aEvent, $handlerModId, $srcModId){
	$aEvent['aItem']['price_original'] = $aEvent['aItem']['price'];
	return $aEvent;
}

В шаблоне:
##if(price_original != price)##<oldprice>##price_original##</oldprice>##endif##

В этом случае не происходит никаких дополнительных запросов к базе и не создается избыточная нагрузка.





Создать новую тему

Всего тем: 6659
Всего сообщений: 27847
Всего зарегистрированных пользователей: 53169
Последний зарегистрированный пользователь: aidar2020