Автор Тема: Привязка цен в магазине к доллару  (Прочитано 17387 раз)

29 Июль 2015, 12:32:29
Ответ #60
  • Фрилансер
  • *
  • Сообщений: 105
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Это делал, но уже вернул в исходное состояние, так как из-за этого плывет разметка на главной странице.

Цитировать
Попробуйте еще в файле /js/tools.js заменить
Код: [Выделить]

function setCurrency(id_currency)

на
Код: [Выделить]

29 Июль 2015, 12:34:53
Ответ #61
  • Ветеран
  • *****
  • Сообщений: 22125
  • Репутация: +25303/-1
  • Prestashop - просто и эффективно
    • Просмотр профиля
Валюта меняется при загрузки страницы в зависимости от IP вот этой функцией - GoogleAnalyticEnhancedECommerce.
Или отключайте ее, или меняйте setCurrency и исправляйте разметку.
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!
29 Июль 2015, 12:44:21
Ответ #62
  • Фрилансер
  • *
  • Сообщений: 105
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Как отключить функцию GoogleAnalyticEnhancedECommerce?

Удалил модуль Google Analytics, результата нет.
29 Июль 2015, 12:48:50
Ответ #63
  • Ветеран
  • *****
  • Сообщений: 22125
  • Репутация: +25303/-1
  • Prestashop - просто и эффективно
    • Просмотр профиля
В prestashop модуль ganalytics подключает эту функцию. Если его удалить, то и функция не должна подключаться.
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!
29 Июль 2015, 12:55:17
Ответ #64
  • Фрилансер
  • *
  • Сообщений: 105
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Странно.
Модуль деинсталировал, но проблема осталась.


PrestaMan, посмотрите, пожалуйста, какой функцией сейчас меняется валюта.
29 Июль 2015, 12:59:22
Ответ #65
  • Ветеран
  • *****
  • Сообщений: 22125
  • Репутация: +25303/-1
  • Prestashop - просто и эффективно
    • Просмотр профиля
В заголовке страницы
<script type="text/javascript">
var CUSTOMIZE_TEXTFIELD = 1;
....
var currency = {"id":4,"name":"\u0414\u043e\u043b\u043b\u0430\u0440","iso_code":"USD","iso_code_num":"840","sign":"$","blank":"0","conversion_rate":"1.000000","deleted":"0","format":"2","decimals":"0","active":"1","prefix":"","suffix":" $","id_shop_list":null,"force_id":false};
var currencyBlank = 0;
var currencyFormat = 2;
var currencyRate = 1;
var currencySign = '$'
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!
29 Июль 2015, 13:19:25
Ответ #66
  • Фрилансер
  • *
  • Сообщений: 113
  • Репутация: +3/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В файле /themes/default-bootstrap/global.tpl удалите или измените переменную currency.
05 Август 2015, 19:54:07
Ответ #67
  • Фрилансер
  • *
  • Сообщений: 105
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Обновился до версии 1.6.1.1, и проблема решилась.
13 Январь 2016, 03:58:58
Ответ #68
  • Новичок
  • *
  • Сообщений: 6
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
У меня версия 1.6.1.1 но проблема осталась. Перечитал всю ветку, дела правки в файлах FrontController.php, tools.js, Tools.php, global.tpl - не помогло(
Почему же преста не выводи во фронте принудительно указанную валюту (которая отличается от заданной по дефолту в админке?)



upd:
помог код для product.tpl

{assign var="price" value=$product->getPrice(true, $smarty.const.NULL, 2)}
{assign var="convertedPrice" value=Tools::convertPrice($price, $currencies.0.id_currency)}
грн : {round($convertedPrice, 0)}

конечно теперь придется его менять во всех местах - списках, корзинах, рассылках...
13 Январь 2016, 05:27:44
Ответ #69
  • Новичок
  • *
  • Сообщений: 6
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
product.tpl

вывод цены был
<span id="our_price_display" itemprop="price">{convertPrice price=$productPrice}</span>
вывод цены стал
<span id="our_price_display" itemprop="price">{round($convertedPrice, 0)} грн</span>

В product-list.tpl
уже иначе выглядит строка вывода
{if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}
и при попытке вставить 2 строки кода
{assign var="price" value=$product->getPrice(true, $smarty.const.NULL, 2)}
{assign var="convertedPrice" value=Tools::convertPrice($price, $currencies.0.id_currency)}

сайт не открывается. Подскажите, пожалуйста, как правильно заменить код в product-list ?
13 Январь 2016, 11:42:12
Ответ #70
  • Ветеран
  • *****
  • Сообщений: 33325
  • Репутация: +26771/-0
    • Просмотр профиля
В product.tpl
$product->getPrice(false, $smarty.const.NULL, 6)}
В product-list.tpl
$product.price
Разница в доступе к элементам "." и "->".
13 Январь 2016, 12:16:00
Ответ #71
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
{convertPrice price=$productPrice currency='id валюты'}
13 Январь 2016, 18:36:08
Ответ #72
  • Новичок
  • *
  • Сообщений: 6
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В product.tpl
$product->getPrice(false, $smarty.const.NULL, 6)}
В product-list.tpl
$product.price
Разница в доступе к элементам "." и "->".


{$product->getPrice(false, $smarty.const.NULL, 6)}Этот код отдает число в долларах, а нужно показывать пользователю в гривне (когда в настройках основная валюта по умолчанию - доллары).
Т.е. как раньше уже писали, суть в том чтоб забивать цену на товар в долларе, а пользователям показывать в гривне/рублях.

Тот код что я написал выше, нашел здесь в других темах, но он пока работает только для product.tpl (а нужно еще для product-list и корзины).
13 Январь 2016, 18:48:29
Ответ #73
  • Новичок
  • *
  • Сообщений: 6
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
{convertPrice price=$productPrice currency='id валюты'}

Это работает только в том случае, если у меня (на стороне сервера) уже выбрана валюта гривны как основная. Если зайти через любой анонимный прокси, показывает цену в баксах(( Опять таки, перепробовал даже все цифры от 0 до 4 (хотя знаю что айдишник гривны у меня = 1), все равно в $ показывает
13 Январь 2016, 21:58:32
Ответ #74
  • Новичок
  • *
  • Сообщений: 6
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля