如果配置文件字段未填写,如何显示文本?

时间:2021-07-19 作者:Avigo

如何显示任何文本/内容,如果all buddypress用户配置文件字段未填写?

以下是我的代码,如果字段由用户填写,则会检索字段数据:

$fields = array(\'Field 1\', \'Field 2\', \'Field 3\', \'Field 4\', \'Field 5\');
foreach ( $fields as $field) {

    $data = xprofile_get_field_data($field);
    
    if ($data) {
        echo \'<div class="">\'. $field .\' - \'. $data .\'</div>\';
    }
}

// How to display here information if all 5 fields are not filled by user?

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

你可以使用,我称之为flag(不记得Profional这个词,但我肯定有一个)。

其思想是创建一个具有布尔值的变量,这取决于具体情况,例如我们的示例,它将为false。

所以基本上,从一开始我们就假设所有字段都没有值,一切都正常,在foreach中,我们将检查字段是否实际有值,如果有,我们将把标志设置为true。

现在我们知道,如果我们的国旗是假的,我们可以显示我们想要的,但如果它是真的,我们不会显示。

代码如下

$fields = array(\'Field 1\', \'Field 2\', \'Field 3\', \'Field 4\', \'Field 5\');

$flag = false;

foreach ( $fields as $field) {

    $data = xprofile_get_field_data($field);
    
    if ($data) {
        echo \'<div class="">\'. $field .\' - \'. $data .\'</div>\';

        $flag = true;
    }
}

if (!$flag) {
    // display here information if all 5 fields are not filled by user
}

相关推荐

BuddyPress:只允许一个电子邮件域名注册

在BuddyPress中,我希望只允许使用一个电子邮件域进行注册和登录。例如,xxx@myemaildomain.com不允许全部还原。我已经检查了BuddyPress源,发现BuddyPress正在使用bp_core_validate_user_signup( $user_name, $user_email ) 用于具有筛选器的注册return apply_filters( \'bp_core_validate_user_signup\', $result ); 所以我尝试使用过滤器来修改us