이 코드를 사용하여 woocommerce 결제 페이지의 "shipping_country"레이블 이름을 성공적으로 변경했습니다.
add_filter( 'woocommerce_checkout_fields', 'rename_woo_checkout_fields' );
function rename_woo_checkout_fields( $fields ) {
$fields['shipping']['shipping_country']['label'] = 'Country';
return $fields;
}
하지만 변경하려는 레이블과 자리 표시자를 추가하려고하면 작동하지 않습니다. 글쎄, 실제로 이상한 일이 발생합니다. 변경 사항을 적용하기 위해 페이지를 새로 고치면 작동하는 것처럼 보이지만 페이지가 여전히로드 중이며 잠시 후 원래 상태로 돌아갑니다. (shipping_country 필드는 여전히 작동하지만 위에서 추가 한 다른 모든 필드가 발생합니다.
시퀀스 변경을 시도했지만 상관 없습니다.
작동하지 않는 변경하려는 필드는 다음과 같습니다.
$fields['billing']['billing_address_1']['label'] = 'Address';
$fields['billing']['billing_address_1']['placeholder'] = 'Street and house number';
$fields['billing']['billing_city']['label'] = 'City';
$fields['billing']['billing_postcode']['label'] = 'Postcode';
$fields['shipping']['shipping_postcode']['label'] = 'Postcode';
$fields['shipping']['shipping_city']['label'] = 'City';
$fields['shipping']['shipping_city']['placeholder'] = 'City';
$fields['shipping']['shipping_address_1']['label'] = 'Address';
$fields['shipping']['shipping_address_1']['placeholder'] = 'Street and house number';
$fields['order']['order_comments']['placeholder'] = 'Special notes';
페이지로드가 완료되기 전에 페이지에서 변경 사항을 되 돌리는 것은 무엇일까요?
대신 다음을 시도하십시오.
// For billing and shipping fields
add_filter( 'woocommerce_default_address_fields', 'custom_default_address_fields' );
function custom_default_address_fields( $address_fields ) {
if ( is_checkout() ) {
$address_fields['address_1']['label'] = __('Address', 'woocommerce');
$address_fields['address_1']['placeholder'] = __('Street and house number', 'woocommerce');
$address_fields['country']['label'] = __('Country', 'woocommerce');
$address_fields['postcode']['label'] = __('Postcode', 'woocommerce');
$address_fields['city']['label'] = __('City', 'woocommerce');
$address_fields['city']['placeholder'] = __('City', 'woocommerce');
}
return $address_fields;
}
add_filter( 'woocommerce_checkout_fields', 'change_checkout_fields' );
function change_checkout_fields( $fields ) {
$fields['order']['order_comments']['placeholder'] = __('Special notes');
return $fields;
}
코드는 활성 자식 테마 (또는 활성 테마)의 functions.php 파일에 들어갑니다. 마지막 WooCommerce 버전 (5.0.0) 에서 테스트 및 작동합니다 .
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다