Не удается изменить ярлык купона WooCommerce в итогах корзины - PullRequest
0 голосов
/ 03 сентября 2018

Это оказалось проблемой, которую я не могу понять. Я занимался переименованием «Купона» в «Промо» практически везде. Однако переименовать WC LABEL, который называет имя купона и LABEL, намного сложнее.

Вот скриншот того, о чем я говорю:

Screenshot

Я в значительной степени переименовал все варианты использования "купона" в "промо" для всего сайта. От этого у меня выпадают волосы. Кто-нибудь когда-нибудь успешно менял это? Чего мне не хватает?

Переименуйте купон в промо-код, указанный ниже

// rename the coupon field on the cart page
function woocommerce_rename_coupon_field_on_cart( $translated_text, $text, $text_domain ) {
   // bail if not modifying frontend woocommerce text
   if ( is_admin() || 'woocommerce' !== $text_domain ) {
      return $translated_text;
   }
   if ( 'Coupon code:' === $text ) {
      $translated_text = 'Promo Code:';
   }
   return $translated_text;
}
add_filter( 'gettext', 'woocommerce_rename_coupon_field_on_cart', 10, 3 );

// rename the "Have a Coupon?" message on the checkout page
function woocommerce_rename_coupon_message_on_checkout() {
   return 'Have a Customer Code?' . ' <a href="#" class="showcoupon">' . __( 
      'Click here to enter your code', 'woocommerce' ) . '</a>';
}
add_filter( 'woocommerce_checkout_coupon_message', 
   'woocommerce_rename_coupon_message_on_checkout' );

// rename the coupon field on the checkout page
function woocommerce_rename_coupon_field_on_checkout( $translated_text, $text, $text_domain ) {
   // bail if not modifying frontend woocommerce text
   if ( is_admin() || 'woocommerce' !== $text_domain ) {
      return $translated_text;
   }
   if ( 'Coupon code' === $text ) {
      $translated_text = 'Promo Code';
   } elseif ( 'Apply coupon' === $text ) {
      $translated_text = 'Apply Code';
   }
   return $translated_text;
}
add_filter( 'gettext', 'woocommerce_rename_coupon_field_on_checkout', 10, 3 );

Уведомления о купоне WC / код сообщения ниже

function woocommerce_coupon_message( $translated_text, $text, $domain ) {
   switch ( $translated_text ) {
      case 'Coupon' :
          $translated_text = __( 'Promo', 'woocommerce' );
          break;
      case 'promo' :
          $translated_text = __( 'promo', 'woocommerce' );
          break;    
      case 'Please enter a coupon code.' :
          $translated_text = __( 'Please enter a Promo code.', 'woocommerce' );
          break; 
      case 'Coupon code already applied!' :
          $translated_text = __( 'Promo code already applied!', 'woocommerce' );
          break; 
      case 'Coupon has been removed.' :
          $translated_text = __( 'Promo has been removed', 'woocommerce' );
          break; 
      case 'Coupon code applied successfully.' :
          $translated_text = __( 'Promo code applied successfully.', 'woocommerce' );
          break;              
   }
   return $translated_text;
}
add_filter( 'gettext', 'woocommerce_coupon_message', 20, 3 );

Ответы [ 2 ]

0 голосов
/ 03 августа 2019
add_filter( 'woocommerce_cart_totals_coupon_label', 'woocommerce_change_coupon_label' );
function woocommerce_change_coupon_label($sprintf, $coupon) {
    return 'Promo ' . $coupon->code;
}
0 голосов
/ 05 ноября 2018
// Hide 'Coupon: CODE' in cart totals and instead return generic 'Promo Code Applied'
add_filter( 'woocommerce_cart_totals_coupon_label', 'woocommerce_change_coupon_label' );
function woocommerce_change_coupon_label() {
    echo 'Promo Code Applied';
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...