首页 > 解决方案 > 如何更改 woocommerce 结帐页面上的字段标签?

问题描述

我是第一次使用 wordpress。有大量关于如何在 WordPress 中做事的信息。我想简单地更改结帐页面上的邮政编码/邮政编码字段的标签。以下是我遵循的步骤:

1>安装 woocommerce 插件
2>导入虚拟数据
3>安装 Astra Starter Template Plugin
4>安装 Brandstore 主题
5>根据指南创建我自己的子主题

测试站点。此时一切正常。

现在我想在结帐页面上简单地更改“邮政编码/邮编”的标签

因此,根据 woocommerce指南,我在子主题的 functions.php 中添加了以下代码

// Hook in
add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields',100 );

// Our hooked in function - $fields is passed via the filter!
function custom_override_checkout_fields( $fields ) {
     $fields['billing']['billing_postcode']['label'] = 'Postal Code';
     return $fields;
}

当我刷新页面时,它没有更改标签。

Q1> 如何更改结帐页面上的字段标签。
Q2> 结帐页面的模板在哪里?看起来结帐页面正在使用 [woocommerce_checkout]代码

标签: wordpresswoocommercewordpress-theminghook-woocommercecustom-wordpress-pages

解决方案


/** * 将字段添加到结帐 */

add_action('woocommerce_after_order_notes', 'my_custom_checkout_field');

功能 my_custom_checkout_field( $checkout ) {

echo '<div id="my_custom_checkout_field"><h2>' . __('My Field') . '</h2>';

woocommerce_form_field( 'my_field_name', array(

    'type'          => 'text',

    'class'         => array('my-field-class form-row-wide'),

    'label'         => __('Fill in this field'),

    'placeholder'   => __('Enter something'),

    ), $checkout->get_value( 'my_field_name' ));


    echo '</div>';

}

访问官方文档


推荐阅读