Wordpress Ultimate Member:在帐户页面上显示个人资料信息

Wordpress Ultimate Member: show profile info on account page

我使用终极会员插件制作了一个带有一些额外字段的自定义注册表单。我想在帐户页面上显示这些额外的字段。我已经用钩子为它创建了一个额外的选项卡(见下面的代码),但我似乎无法找到如何从注册表单的额外字段中获取数据。有人有想法吗?

亲切的问候 戴维

/* Ultimate member */
/* tab Stormbee registration */

add_filter('um_account_page_default_tabs_hook', 'my_custom_tab_in_um', 100 );
function my_custom_tab_in_um( $tabs ) {
    $tabs[800]['mytab']['icon'] = 'um-faicon-pencil';
    $tabs[800]['mytab']['title'] = 'Stormbee registration';
    $tabs[800]['mytab']['custom'] = true;
    return $tabs;
}

/* make our new tab hookable */

add_action('um_account_tab__mytab', 'um_account_tab__mytab');
function um_account_tab__mytab( $info ) {
    global $ultimatemember;
    extract( $info );

    $output = $ultimatemember->account->get_tab_output('mytab');
    if ( $output ) { echo $output; }
}

/* Finally we add some content in the tab */

add_filter('um_account_content_hook_mytab', 'um_account_content_hook_mytab');
function um_account_content_hook_mytab( $output ){
    ob_start();
    ?>

    <div class="um-field">

        <?php echo um_user('display_name'); ?> <br />

        <?php

        ?>

    </div>      

    <?php

    $output .= ob_get_contents();
    ob_end_clean();
    return $output;
}

/* Ultimate member */

最终会员存储用户元字段中的数据table。为了在前端显示保存的字段值,可以使用Wordpress内置的get_user_meta函数:

echo get_user_meta( $user_ID, $key, true );

您可以使用 get_current_user_id() 检索当前用户的 ID。但由于您计划在终极会员帐户页面(管理员可以访问)上显示它,我建议您改用 UM()->user()->target_id。这将提取您正在查看其 profile/account 页面的用户的 ID。

接下来,您需要做的就是找出字段的键。通常,这都是带下划线的小写字母。所以像 first_name.

最终代码如下所示:

$user_ID = UM()->user()->target_id;
echo get_user_meta( $user_ID, 'description', true );