Автор Тема: Модуль yandex Маркет и валюта магазина  (Прочитано 1042 раз)

05 Ноября 2013, 12:33:30
  • Фрилансер
  • *
  • Сообщений: 104
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Всем привет. Возникла потребность экспортировать товары из магазина в файл yml, совместимый с Яндекс.Маркетом.
Нашел в сети модуль Yandex Маркет Lite v0.2 (yamarket), установил, настроил. Все работает. Но вот проблемка - у меня в магазине установлена валюта по умолчанию доллар, и в yml также генерируются цены в долларах. А мне нужны цены в гривнах.

Порылся в коде шаблона и в файле yamarket.php такие строчки:
//Валюта по умолчанию
    $curr_def=new Currency(intval(Configuration::get('PS_CURRENCY_DEFAULT')));
Я так понял, что она отвечает за то, чтобы файл yml генерировался с ценами в валюте по умолчанию. Я не специалист, может кто подскажет, что тут изменить, чтобы вписать ID нужной валюты?
05 Ноября 2013, 13:37:07
Ответ #1
  • Фрилансер
  • *
  • Сообщений: 198
  • Репутация: +4/-0
  • Разработка и программирование сайтов
    • Просмотр профиля
    • Разработка и программирование сайтов
Всем привет. Возникла потребность экспортировать товары из магазина в файл yml, совместимый с Яндекс.Маркетом.
Нашел в сети модуль Yandex Маркет Lite v0.2 (yamarket), установил, настроил. Все работает. Но вот проблемка - у меня в магазине установлена валюта по умолчанию доллар, и в yml также генерируются цены в долларах. А мне нужны цены в гривнах.

Порылся в коде шаблона и в файле yamarket.php такие строчки:
//Валюта по умолчанию
    $curr_def=new Currency(intval(Configuration::get('PS_CURRENCY_DEFAULT')));
Я так понял, что она отвечает за то, чтобы файл yml генерировался с ценами в валюте по умолчанию. Я не специалист, может кто подскажет, что тут изменить, чтобы вписать ID нужной валюты?
Посмотрите в админке какой id у вас стоит для валюты гривна. И попробуйте заменить
    $curr_def=new Currency(intval(id гривны));
05 Ноября 2013, 14:55:42
Ответ #2
  • Фрилансер
  • *
  • Сообщений: 104
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Попробовал, не получилось. Сам символ валюты в yml файле изменился и уже вместо USD показывает UAH. Но вот сама цена - она по-прежнему в долларах :(

В том же файле еще вот такой код есть:
//Валюты
  if($this->_settings['y_cu']){
    $currencies=Currency::getCurrencies();
   
    foreach($currencies as $currency){
      $market->add(new yCurrency(($currency['iso_code']), floatval($currency['conversion_rate'])));
    }
    unset($currencies);
  } else {
    $market->add(new yCurrency($curr_def->iso_code, floatval($curr_def->conversion_rate)));
  }
05 Ноября 2013, 15:32:17
Ответ #3
  • Ветеран
  • *****
  • Сообщений: 13639
  • Репутация: +14563/-1
  • Сообщество PrestaShop
    • Просмотр профиля
Выгрузка в модуле YaMarket всегда в валюте по умолчанию. Нужно изменить модуль, чтобы менять валюту.
Но можно сделать без измений. Отметить в настройках "Выгружать все валюты" и потом удалить не нужные из файла. Если в магазине, куда импортируете товары, есть возможность выбора валюты для импорта, то и удалять ничего не нужно, просто указать iso код валюты.
05 Ноября 2013, 15:43:51
Ответ #4
  • Фрилансер
  • *
  • Сообщений: 104
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Выгрузка в модуле YaMarket всегда в валюте по умолчанию. Нужно изменить модуль, чтобы менять валюту.
Но можно сделать без измений. Отметить в настройках "Выгружать все валюты" и потом удалить не нужные из файла. Если в магазине, куда импортируете товары, есть возможность выбора валюты для импорта, то и удалять ничего не нужно, просто указать iso код валюты.
спасибо за вариант, попробую.