Woocommerce: настраиваем многовалютность

·
Woocommerce: настраиваем многовалютность

Woocommerce в свое время стал для многих точкой сдвига парадигмы по отношению к WordPress. Еще несколько лет назад уже кто-то начал понимать, что WordPress уже никогда не будет просто блоговым движком, к которому костылями можно прикрутить убогое подобие чего-то еще кроме блога. WordPress стал полноценной платформой, на которой можно создавать самые разные и еще очень красивые и удобные решения. На сегодня я не знаю ни одного движка, UI административной панели, который хоть отдаленно мог бы сравниться по удобству с WordPress. Может быть, есть более гибкие, может быть, есть более расширяемые, с более красивым и организованным кодом, с большей сопротивляемостью к нагрузкам. Но именно такого красивого в плане интерфейсов и простоты использования для пользователя не видел. Это было лирическое отступление).

Задача: сделать возможность выбора валют в магазине.

Тут могут быть разные задачи:

  • пользователь хочет посмотреть стоимость товара в другой (например, местной, менее распространенной) валюте;
  • пользователь хочет выбрать, в какой валюте ему оформить заказ (например, чтобы сэкономить на конверсии);
  • владелец магазина хочет вести учет в валюте, по которой идет закупка товара, а продавать в местной валюте;
  • или даже пользователь хочет иметь возможность оплатить каждый товар в заказе в определенной валюте.

Что мы имеем для решения и какие параллельные задачи и проблемы возникают при этом? Пост больше обзорный, в код сильно лазить не будем.

Во-первых, в woocommerce не все валюты присутствуют по умолчанию.

Рубль в плагине уже есть (был добавлен в версии 2.0.9 в мае 2013 г. — ист. справка) и доллар, конечно же, тоже, можете не переживать. А вот, если вам понадобится какой-нибудь ливанский фунт, то вы его там не найдете. Со временем добавляется поддержка новых валют, но, все равно, возможна ситуация, что нужной вам валюты все-таки не окажется (например, вы создадите новое государство и вам понадобятся собственные денежные знаки).

Добавить новую валюту можно несколькими способами:

  1. Некоторые дополнительные валюты могут быть встроены в разные расширения для woocommerce — всякие локальные платежные шлюзы или расширения, предлагаемые локальными разработчиками.
  2. Есть плагин WooCommerce All Currencies, который добавляет на ваш сайт вообще все существующие валюты. Плагин давно не обновлялся, но, по идее, должен работать. Что там обновлять? Новые валюты не каждый день появляются, а совместимость с woocommerce 2.0 и выше заявлена на страница плагина. UPD: буквально на днях плагин все-таки обновился.
  3. Есть плагин WooCommerce Custom Currencies — позволяет добавить через админку новые валюты и даже задать для них обменный курс на основе курса paypal. Плагин на момент написания поста все еще в бета-версии, у меня выдал на одном сайте пачку ошибок и работать не захотел. Но вам-то, наверняка, повезет!
  4. Можно просто добавить следующий код в файл functions.php вашего шаблона (читайте комменты к коду):
    add_filter( 'woocommerce_currencies', 'add_my_currency' );
    // Добавляем краткое обозначение валюты (из 3 букв) и ее название 
    function add_my_currency( $currencies ) {
         $currencies['LBP'] = __( 'Lebanon pound', 'woocommerce' );
         return $currencies;
    }
     
    add_filter('woocommerce_currency_symbol', 'add_my_currency_symbol', 10, 2);
    // Добавляем символ валюты 
    function add_my_currency_symbol( $currency_symbol, $currency ) {
         switch( $currency ) {
              case 'LBP': $currency_symbol = 'ل.ل'; break;
         }
         return $currency_symbol;
    }

    Это как раз пример для ливанского фунта. Сниппет взят из официальной документации.

Во-вторых, может возникнуть необходимость в регулярной актуализации курса выбранной валюты.

Например, если вы занимаетесь дропшиппингом из Китая (что сейчас очень популярно). И вам нужно, чтобы цена автоматически корректировалась в зависимости от курса доллара.

  1. Опять же, плагины для платежных шлюзов или смены валют (об этих чуть позже), как правило, включают в себя опцию обновления обменного курса в автоматическом и\или ручном режиме.
  2. Плагин WooCommerce Currency Switcher
    woocommerce_nastraivaem_mnogovalyutnost
    дает возможность добавить в настройки woocommerce несколько валют (в бесплатной версии только 2, но для большинства этого будет достаточно), установить одну из них как базовую (в ней вы будете видеть цены в админке), установить одну как базовую для лицевой части сайта, а также задать, какой сервис использовать для конвертации — Yahoo finance, Google finance или Центробанк России (в бесплатной версии нет автообновления курса, нужно каждый раз заходить в настройки и нажимать кнопку для обновления).

    Я этот плагин использовал на нескольких сайтах, причем, везде только в бесплатной версии. Могу сказать, что функционала хватает, чтобы дать возможность добавлять на сайт товары в одной валюте, а просматривать их в другой. Там еще есть таргетинг посетителей сайта по геолокации, с возможностью показа цены в зависимости от страны посетителя — данную опцию пока не довелось в работе проверить, ничего сказать не могу. Про-версия продается на кодканьоне за 20$.

  3. Плагин от российского производителя — WOOCOMMERCE. КОНВЕРТЕР ВАЛЮТ. МУЛЬТИВАЛЮТНОСТЬ

    Converter-multi-currency-Woocommerce-Plugin-Currencies-Selector-300x300

    позволяет, кроме возможностей предыдущего плагина, еще вывести цену товара сразу в двух валютах, возможность автоматически увеличить или уменьшить значение обменного курса на нужный процент (удобно для автоматического формирования розничной цены, например), фильтрация способов оплаты в соответствии с геолокацией посетителя. Стоимость — 2250 руб.

Теперь о добавлении нескольких валют на сайт

  1. Официальный плагин от woothemes: Currency Converter Widget — 29$. Позволяет очень быстро настроить показ цен в вашем каталоге в самых разных валютах. Вводите столбиком 3-х буквенные коды валют в настройках виджета и все. Обменный курс автоматически обновляется. Пользователь может посмотреть, сколько будут стоить ваши товары в разных валютах. Заказ, при этом, будет оформлен в валюте по умолчанию. Но вы сможете в уже оформленном заказе посмотреть, какую итоговую сумму видел пользователь и в какой валюте.

    currency-converter-widget

  2. Аналогичный, но более гибкий виджет с codecanyon: Smart Currency Converter for WooCommerce — 15$

    smart-currency-converter

    поддерживает 157 валют, позволяет выбрать способ отображения дополнительных валют — непосредственно вместо валюты по умолчанию или в виде всплывающей подсказки. Самая интересная фишка — автоопределение валюты пользователя на основании, видимо, геолокации. Обменный курс берется из Yahoo Finance, но может быть переопределен администратором магазина. Можно настроить отображение для каждого вида валют, а также выбрать несколько вариантов дизайна для показа цен.

  3. Еще один плагин с codecanyon: Woocommerce Multi Currency Store — 24$

    woocommerce-multi-currency-store

    Включает в себя основные опции двух предыдущих плагинов, но, кроме того, позволяет оформить и оплатить заказ в выбранной валюте. Можно даже для каждого товара задать цену в нескольких валютах.

  4. Бесплатный плагин WooCommerce Product Price Based on Countries

    woocommerce-product-price-based-on-countries

    позволяет показывать цены на сайте в зависимости от региона пользователя. Можно создать и настроить группы из одной или нескольких стран пользователя и для каждой группы указать свою валюту. А также настроить для каждого товара вилку цен для всех или некоторых созданных групп (включая цену со скидкой). Вроде как чекаут тоже возможен в выбранной валюте. Но виджета-переключателя нет.

  5. Про WooCommerce Currency Switcher уже написал выше.

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

Если у вас есть свой опыт использования плагинов для работы с валютами в woocommerce, пожалуйста, поделитесь в комментариях к этому посту.

Поделиться записью:
Агентство Romapad
Агентство Romapad
Работаем с 2009 года. Реализовано более 400 проектов. Слаженная команда профессионалов. Создание и администрирование сайтов. Техническая поддержка. Помощь новичкам.
Подпишитесь на рассылку новостей
Отправляя заявку, вы даете согласие на обработку персональных данных
Комментарии к публикациям
Похожие статьи
Прокрутить вверх
Оставьте Ваши контакты,
и мы с Вами свяжемся

Отправляя заявку, вы даете согласие на
обработку персональных данных
Заявка отправлена!
Ожидайте звонка менеджера.

Nullam quis risus eget urna mollis ornare vel eu leo. Aenean lacinia bibendum nulla sed 

Join our newsletter and get 20% discount
Promotion nulla vitae elit libero a pharetra augue