Как условно изменить название платежного адреса WooCommerce, если не указан отдельный адрес доставки - PullRequest
1 голос
/ 30 апреля 2020

У моего сайта есть две опции:

  • Вы можете отправить адрес для выставления счета
  • Вы можете ввести адрес для выставления счета и отдельный адрес доставки, довольно стандартный.

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

Если вы вводите платежный адрес только во время оформления заказа, на странице сведений о заказе в Личном кабинете вы можете видеть только адрес для выставления счета, адрес не дублируется в качестве адреса доставки. Адрес доставки не отображается, поэтому он выглядит странно.


Я бы хотел условно переименовать «Платежный адрес» в «Адрес выставления счета и доставки», если в заказе нет отдельного адреса доставки.

Было бы полезно изменить его и в письмах, так как это имело бы больше смысла.

Я нашел это для переименования заголовка (я не проверял его) , но как мне это сделать условно?

function wc_billing_field_strings( $translated_text, $text, $domain ) {
    switch ( $translated_text ) {
        case 'Billing address' :
            $translated_text = __( 'Billing & Shipping address', 'woocommerce' );
            break;
    }

    return $translated_text;
}
add_filter( 'gettext', 'wc_billing_field_strings', 20, 3 );

1 Ответ

1 голос
/ 30 апреля 2020

Моя учетная запись

https://github.com/woocommerce/woocommerce/blob/master/templates/order/order-details-customer.php

  • Этот шаблон можно изменить, скопировав его в свою тему / woocommerce. /order/order-details-customer.php.

Заменить (строка: 31 )

<h2 class="woocommerce-column__title"><?php esc_html_e( 'Billing address', 'woocommerce' ); ?></h2>

С

<h2 class="woocommerce-column__title">
<?php
// Show shipping = false    
if ( !$show_shipping ) {
    $title = 'Billing & Shipping address';      
} else {
    $title = 'Billing address';
}

esc_html_e( $title, 'woocommerce' );
?>
</h2>

E-mail

https://github.com/woocommerce/woocommerce/blob/master/templates/emails/email-addresses.php

  • Этот шаблон можно переопределить скопировав его на вашу тему / woocommerce / emails / email-адреса. php.

Заменить (строка: 29 )

<h2><?php esc_html_e( 'Billing address', 'woocommerce' ); ?></h2>

С

<h2>
<?php 
// Billing_address
if ( !$order->needs_shipping_address() ) {
    $title = 'Billing & Shipping address';     
} else {
    $title = 'Billing address';
}

esc_html_e( $title, 'woocommerce' );
?>
</h2>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...