WooCommerce/WPML – Как показывать/скрывать продукты в зависимости от доменной зоны

Вопрос или проблема

У нас есть интернет-магазин с продуктами, специфичными для языка. В частности, клавиатуры. Мы используем WPML для перевода на разные языки, и для каждого языка есть собственное доменное имя. Наша базовая язык – голландский (.nl), и сейчас мы переводим на немецкий (.de). Также все продукты являются простыми товарами и связаны с использованием плагина Linked Variations.

Для голландского языка я сделал видимыми только раскладки QWERTY US, используя настройки видимости ИСКАЕМЫЙ/КАТАЛОГ, а все остальные раскладки только в ИСКЕ. Если вы откроете продукт, то все равно сможете изменить раскладку на другой язык, если хотите. Основная причина заключается в том, что многие люди не знают, какая раскладка является наиболее распространенной в их стране. Для Германии у нас есть другая раскладка QWERTZ DE, и я хочу, чтобы, когда вы заходите на сайт по доменному имени .de, по умолчанию отображалась только эта раскладка, а все остальные были скрыты, но все равно могли быть изменены при выборе продукта.

Интернет-магазин находится по адресу https://shop.r-go-tools.nl и https://shop.r-go-tools.de

Категория языковых продуктов:
https://shop.r-go-tools.nl/ergonomisch-toetsenbord/r-go-split-break-versie-2/
https://shop.r-go-tools.de/ergonomische-tastaturen/r-go-split-break-version-2/

Конкретная страница продукта:
https://shop.r-go-tools.nl/ergonomisch-toetsenbord/r-go-split-break-versie-2/r-go-split-break-versie-2-16/
https://shop.r-go-tools.de/ergonomische-tastaturen/r-go-split-break-version-2/r-go-split-break-version-2-weiss-kabellos-qwerty-us/

Есть ли какие-либо предложения о том, как это сделать? Я попробовал несколько плагинов, но ни один из них не работает правильно.

Ответ или решение

Для того чтобы управлять видимостью продуктов в зависимости от доменного расширения с использованием WooCommerce и WPML, необходимо продумать комплексный подход, который будет учитывать как функциональные возможности плагинов, так и технические аспекты настройки вашего интернет-магазина.

1. Понимание структуры сайта

Ваш веб-сайт использует различные домены для представления языков. Это означает, что на сайте с доменом .nl представлена продукция для нидерландских пользователей, а на .de — для германоязычных. Учитывая, что вы используете WPML для перевода, важно правильно связать продукты и управлять их видимостью на разных языках.

2. Настройка управления видимостью товаров

Для начала, вам нужно использовать инструмент управления видимостью, доступный в WooCommerce. Вот шаги, которые помогут настроить отображение товаров:

Шаг 1: Установите и активируйте необходимые плагины

Убедитесь, что у вас установлены следующие плагины:

  • WooCommerce — для управления интернет-магазином.
  • WPML — для многоязычного контента.
  • Linked Variations — для управления связанными вариациями товаров.

Шаг 2: Создание вариаций продуктов

Для каждого продукта, который должен быть языково-ориентированным, создайте вариации. Убедитесь, что разные раскладки (например, QWERTY и QWERTZ) созданы как вариации основного продукта.

Шаг 3: Настройка видимости через WPML

С помощью WPML можно задать специфические параметры видимости для каждого языка. Для этого:

  1. Перейдите в WPML > Управление переводами.
  2. Найдите нужный товар и отредактируйте его перевод для немецкого языка.
  3. В настройках видимости выберите, какие вариации должны отображаться.
    • Для немецкого домена .de выберите только QWERTZ.
    • Для нидерландского домена .nl выберите только QWERTY.

3. Использование кода для дополнительных настройок

Если вам нужны более тонкие настройки, можно добавить пользовательский код в файл functions.php вашей темы:

add_action('woocommerce_product_query', 'filter_products_by_domain');

function filter_products_by_domain($query) {
    if ($_SERVER['HTTP_HOST'] == 'shop.r-go-tools.de') {
        $meta_query = $query->get('meta_query');

        // Установка условия, чтобы показывать только QWERTZ
        $meta_query[] = array(
            'key' => 'layout',
            'value' => 'qwertz',
            'compare' => '='
        );
        $query->set('meta_query', $meta_query);
    }
}

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

4. Протестируйте изменения

После внесения всех изменений, обязательно протестируйте их:

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

5. Заключение

Управление видимостью продуктов в зависимости от домена — это важный аспект для успешного ведения международного бизнеса. Следуя приведенным выше шагам, вы сможете эффективно управлять вашими товарами в зависимости от языка и региона пользователей. Если вы столкнетесь с дальнейшими проблемами, возможно, имеет смысл обратиться к разработчику, знакомому с WooCommerce и WPML, для индивидуальной настройки и решения специфических задач.

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

Оцените материал
Добавить комментарий

Капча загружается...