Измените надпись в кнопке “Выберите опции” на “Купить сейчас!” на странице магазина.

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

Я хочу изменить надпись на кнопке с “Select Options” на “Buy Now!” на странице магазина.
enter image description here

    add_filter( 'woocommerce_product_single_add_to_cart_text', 'wpse_woo_custom_cart_button_text' );
add_filter( 'woocommerce_product_add_to_cart_text', 'wpse_woo_custom_cart_button_text' );
function wpse_woo_custom_cart_button_text() {

  global $product;

  $product_type = $product->get_type();

  // Для изменения на странице отдельного продукта
  if( $product_type == 'variable-subscription' || $product_type == 'variable' ){
    if( is_single() )
        return __( 'Buy Now', 'my-textdomain' );
    else
        return __( 'Choose options', 'my-textdomain' );
  }
  // Для изменения на странице магазина
  else{
    switch ( $product_type ) {
      case 'external':
        return __( 'Buy Now', 'my-textdomain' );
      break;
      case 'grouped':
        return __( 'View products', 'my-textdomain' );
      break;
      case 'simple':
        return __( 'Buy Now', 'my-textdomain' );
      break;
  // вот ваш случай использования
      case 'variable':
        return __( 'Select Value', 'my-textdomain' );
       break;
  // Не является типом продукта по умолчанию
      case 'booking':
        return __( 'Book Now', 'my-textdomain' );
      break;
      default:
        return __( 'Learn more', 'my-textdomain' );
    }
  }
}

Вы можете вставить это в файл functions.php

Вот более краткий ответ только для страницы магазина и текста кнопки плагина WooCommerce Bookings.

    function es_woocommerce_product_add_to_cart_text( $btn_text, $product ) {
        if('booking' === $product->get_type()) {
            return 'Book Now';
        }
    
        return $btn_text;
    }
    add_filter( 'woocommerce_product_add_to_cart_text', 'es_woocommerce_product_add_to_cart_text', 10, 2 );

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

Чтобы изменить текст кнопки "Select Options" на "Buy Now!" на странице вашего интернет-магазина, вы можете использовать предложенное решение, основанное на функциональности WooCommerce. Вот детальное объяснение, как это сделать:

Шаг 1: Добавление кастомного фильтра в functions.php

Вам нужно открыть файл functions.php вашей темы WordPress и добавить следующий код:

add_filter( 'woocommerce_product_single_add_to_cart_text', 'wpse_woo_custom_cart_button_text' );
add_filter( 'woocommerce_product_add_to_cart_text', 'wpse_woo_custom_cart_button_text' );

function wpse_woo_custom_cart_button_text() {
    global $product;
    $product_type = $product->get_type();

    // Для модификации на странице одного продукта
    if( $product_type == 'variable-subscription' || $product_type == 'variable' ) {
        if( is_single() )
            return __( 'Buy Now!', 'my-textdomain' );
        else
            return __( 'Choose options', 'my-textdomain' );
    } else {
        // Модификация для страницы магазина
        switch ( $product_type ) {
            case 'external':
            case 'simple':
                return __( 'Buy Now!', 'my-textdomain' );
            case 'grouped':
                return __( 'View products', 'my-textdomain' );
            case 'variable':
                return __( 'Select Value', 'my-textdomain' );
            case 'booking':
                return __( 'Book Now', 'my-textdomain' );
            default:
                return __( 'Learn more', 'my-textdomain' );
        }
    }
}

Шаг 2: Проверка изменений

После добавления этого кода в functions.php, обновите страницу вашего магазина и убедитесь, что текст кнопки изменился с "Select Options" на "Buy Now!" для подходящих типов продуктов.

Технические детали

  1. Глобальная переменная $product: Этот код использует глобальную переменную $product, чтобы определить тип продукта и изменить текст кнопки в зависимости от контекста.

  2. Типы продуктов WooCommerce: Код учитывает различные типы продуктов, такие как external, simple, variable, grouped, и booking, что позволяет гибко настраивать текст кнопок для каждого из них.

  3. Переводы: Функция __() используется для обеспечения поддержки перевода текста, что может быть полезно для мультиязычных сайтов.

Заключение

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

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

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

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