wordpress 显示用户 meta数据(数组),仅显示第一个值

dldeef67  于 2022-12-17  发布在  WordPress
关注(0)|答案(1)|浏览(112)

我通过webhook将电话详细信息添加到相应用户的 meta数据中(使用wp-webhook插件)。输出是一个数组,因为数据总是被添加。由于某种原因,只有第一个值被显示在前端。下面是2个独立的方法,我已经尝试过,都没有显示所有的数据。我也使用PHP代码段插件(不确定这是否与问题有关).用户配置文件中显示的webhook的输出 meta数据如下所示:

//output data
    array (
      0 => 'phone_data 1',
      1 => 'phone data 2',
      2 => 'phone data 3',
      3 => 'phone data 4',
      4 => 'phone data 5',
      5 => 'phone data 6',
    )

//get and display user meta
$current_user = wp_get_current_user();
if ( $current_user ) {
    $meta = get_user_meta( $current_user->ID, 'phone_calls' , true );
    if ( ! is_array( $meta ) ) {
    $meta = array();
}
        echo 'User phone calls: ' . $current_user->phone_calls . ;
}

// Also Tried this:

$current_user = wp_get_current_user();
echo 'User phone calls: ' . $current_user->phone_calls . ;
py49o6xq

py49o6xq1#

您的代码已损坏。以下是它的有效版本,尽管您可以使用WordPress内部函数get_current_user_id()来简化它。

//get and display user meta
$current_user = wp_get_current_user();
if ( $current_user ) {
    $meta = get_user_meta( $current_user->ID, 'phone_calls' , true );

    if ( ! is_array( $meta ) ) {
        $meta = array();
    }

    echo 'User phone calls: ' . json_encode( $meta );
}

您还可以使用以下函数(直接在WP Webhook中)获取用户 meta数据:https://wp-webhooks.com/integrations/wordpress/actions/get_user/

相关问题