Php 在user admin-WooCommerce中将复选框设置为自定义用户元

Php 在user admin-WooCommerce中将复选框设置为自定义用户元,php,wordpress,checkbox,woocommerce,admin,Php,Wordpress,Checkbox,Woocommerce,Admin,我在用户帐户管理界面中设置了一个简单的复选框字段。以下是我如何显示/保存它: function show_free_ground_field( $user ) { ?> <h3>Free Ground Shipping</h3> <table class="form-table"> <tr> <th>Free ground for order > $1000&l

我在用户帐户管理界面中设置了一个简单的复选框字段。以下是我如何显示/保存它:

function show_free_ground_field( $user ) { 
?>

    <h3>Free Ground Shipping</h3>

    <table class="form-table">

        <tr>
            <th>Free ground for order > $1000</th>

            <td>
                <?php
                woocommerce_form_field( 'freeGround', array(
                    'type'      => 'checkbox',
                    'class'     => array('input-checkbox'),
                    'label'     => __('Yes'),
                ), '' );


                ?>

            </td>
        </tr>

    </table>
<?php 
}
add_action( 'show_user_profile', 'show_free_ground_field' );
add_action( 'edit_user_profile', 'show_free_ground_field' );

function save_free_ground_field( $user_id ) {

    if ( !current_user_can( 'edit_user', $user_id ) ){
        return false;
    }
    if ( ! empty( $_POST['freeGround'] ) ){
        update_usermeta( $user_id, 'freeGround', $_POST['freeGround'] );
    }
}
add_action( 'personal_options_update', 'save_free_ground_field' );
add_action( 'edit_user_profile_update', 'save_free_ground_field' );
函数显示自由地面字段($user){
?>
免费陆运
订单价格>1000美元的免费场地

您需要在第一个函数中获取此复选框字段的保存值:

add_action( 'show_user_profile', 'show_free_ground_field' );
add_action( 'edit_user_profile', 'show_free_ground_field' );
function show_free_ground_field( $user ) { 
    ?>
    <h3>Free Ground Shipping</h3>
    <table class="form-table">
        <tr>
            <th>Free ground for order > $1000</th>
            <td>
    <?php

    $freeGround = get_user_meta( $user->id, 'freeGround', true );
    if ( empty( $freeGround ) ) $freeGround = '';

    woocommerce_form_field( 'freeGround', array(
        'type'      => 'checkbox',
        'class'     => array('input-checkbox'),
        'label'     => __('Yes'),
    ), $freeGround );

    ?>
            </td>
        </tr>
    </table>
    <?php 
}
add_action('show_user_profile'、'show_free_ground_field');
添加动作(“编辑用户配置文件”、“显示自由场地”);
函数show_free_ground_字段($user){
?>
免费陆运
订单价格>1000美元的免费场地