skip to Main Content

Hello I have a button in WooCoommerce. I would like to translate the button. But I can’t do that via LocoTranslate or anything else. Is there any PHP function to replace button texts without ID?

Here you can see the Code

Here you can see the button in the frontend

Best regards!

2

Answers


  1. add_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );
    function woocommerce_template_loop_add_to_cart( $args = array() ) {
      global $product;
    
      if ( $product ) {
        $defaults = array(
          'quantity'   => 1,
          'class'      => implode( ' ', array_filter( array(
            'button',
            'product_type_' . $product->get_type(),
            $product->is_purchasable() && $product->is_in_stock() ? 'add_to_cart_button' : '',
            $product->supports( 'ajax_add_to_cart' ) ? 'ajax_add_to_cart' : '',
          ) ) ),
          'attributes' => array(
            'data-product_id'  => $product->get_id(),
            'data-product_sku' => $product->get_sku(),
            'aria-label'       => $product->add_to_cart_description(),
            'rel'              => 'nofollow',
          ),
        );
    
        $args = apply_filters( 'woocommerce_loop_add_to_cart_args', wp_parse_args( $args, $defaults ), $product );
    
        wc_get_template( 'loop/add-to-cart.php', $args );
      }
    }
    
    add_filter( 'woocommerce_product_add_to_cart_text', 'woo_custom_cart_button_text' );    // 2.1 +
    function woo_custom_cart_button_text() {
            return __( 'Add to cart', 'woocommerce' );
    }
    
    Login or Signup to reply.
  2. add_filter('gettext_woocommerce', 'rename_button_text_wc', 10, 3);
    
    function rename_button_text_wc($translated_text, $text, $text_domain) {
        // bail if admin page or not modifying frontend woocommerce text.
        if (is_admin() || 'woocommerce' !== $text_domain) {
            return $translated_text;
        }
    
        if ('Check Out All' === $text) {
            $translated_text = 'Checkout';
        }
    
        return $translated_text;
    }
    
    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search