如何从BuddyPress扩展配置文件中获取自定义字段

时间:2016-08-04 作者:R Hisgen

我正在使用BuddyPress进行一些新项目,其中一个核心功能需要来自自定义概要文件字段的一些信息。这个字段是下拉列表,所以我只有4个可能的结果。所以,得到这个字段看起来很简单,但我无法让它工作。我使用以下代码获取此字段:

// If the user isn\'t logged in, just return 4 (default styling)
if (!is_user_logged_in()) {
return 4;
}
$user = wp_get_current_user();
$user_id = $user->id;
$user_team = xprofile_get_field_data( 3, 1 );
在此代码中,字段ID固定为3,用户ID固定为1(我的用户ID)。最初我使用$user\\u id作为用户id,但这不起作用。

此代码的问题是,如果我使用var\\u转储运行代码,$user\\u team只返回字符串(0)“”。然后,如果我去检查后端配置文件中的字段,它不会被填写。但是,当我不运行此代码时,会选择正确的值。此代码处于活动状态时,我也无法更改该值。

有人知道如何解决这个(可能很容易)问题吗?我已经使用了bp\\u get\\u profile\\u field\\u data(),但这给出了完全相同的结果。

提前感谢:)。

1 个回复
最合适的回答,由SO网友:shanebp 整理而成

这可能是由于代码的上下文造成的,而您没有解释。

在你的主题/功能中试试这个。php

function hisgen_check() {
   echo \'field: \' . xprofile_get_field_data( 3, bp_loggedin_user_id(), \'comma\' );
}
add_action( \'bp_ready\', \'hisgen_check\' );

相关推荐

BuddyPress返回错误的xprofile日期

一切正常,但突然间BuddyPress xprofiledate 字段之前给出一个日期。然而,我已经检查了数据库,输入是正确的。它只是返回了错误的日期。这意味着,如果我将日期设置为1920-12-12,它将存储正确的(相同),但返回1920-12-11。我使用以下BuddyPress函数获取日期。// tried by field id bp_get_profile_field_data([ \'field\' => 5, \'user_id\' =>