WooCommerce/Wordpress 中自定义字段的数据存储在哪里

我有一个插件,可以将自定义字段添加到 WooCommerce 帐户页面。以下面的 apikey 字段为例(这只是一个随机字段,它可以是任何内容)


add_action( 'woocommerce_edit_account_form', 'add_api_info_to_account_form' );

function add_api_info_to_account_form() {

  $user = wp_get_current_user();

  ?>

  <fieldset>

    <legend><?php esc_html_e( 'GHL/MBO Sync', 'woocommerce' ); ?></legend>


    <p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-wide">

        <label for="apikey"><?php _e( 'MBO API Key', 'woocommerce' ); ?></label>

        <input type="text" class="woocommerce-Input woocommerce-Input--text input-text" 

         name="apikey" id="apikey" value="<?php echo esc_attr( $user->apikey ); ?>" />

    </p>

每当我进入个人资料页面时,我都会看到值 $user->apikey 是从wp_get_current_user()加载的


但是,在我的其他文件中,我尝试使用get_users()访问每个用户的 API 密钥,并且不返回 apikey 信息。


有没有办法用所有用户的数组返回这样的自定义字段?


这是第二个文件中的代码:


$users = get_users();

print_r($users);

它返回一个大数组,但没有 apikey 字段


眼眸繁星
浏览 144回答 2
2回答

守着星空守着你

要加载用户元(自定义字段),您需要使用此函数 get_user_meta($user_id, $meta_key )。简单来说,要获取用户 API 密钥就可以使用这一行global&nbsp;$current_user;&nbsp; $user_api_key&nbsp;=&nbsp;get_user_meta($current_user->id,&nbsp;'apikey'&nbsp;);您可以将 $user_api_key 放置在要显示 apikey 的任何位置。请尝试一下并告诉我它是否适合您。我是来帮忙的。

暮色呼如

WordPress 使用 wp_users 表在其数据库中存储用户数据。wp_users表中仅存储最基本的用户信息。它仅包括每个用户的用户名 (user_login)、密码 (user_pass) 和电子邮件 (user_email)。为了存储额外的用户数据,使用 wp_usermeta 表。users 表中的 ID 字段和 wp_usermeta 表中的 user_id 字段用于链接同一用户的记录。要检索用户元,您可以使用 get_user_meta 函数。
打开App,查看更多内容
随时随地看视频慕课网APP