Gender based user avatar

时间:2020-04-17 作者:shimii

我正在创建一个婚姻网站。我想根据性别设置用户头像(我有一个用户性别的自定义\\u user\\u meta),但我不知道如何获取“用户id”,以便使用元数据“user\\u meta\\u gender”(以了解用户是男性还是女性)。

P、 S:我没有使用buddypress,我使用的是一个名为Profile Builder的插件proals get\\u current\\u user\\u id无法工作,因为它只检索登录的用户id。

``这是我在函数中使用的代码。php:

function dynamic_user_gravatar($current_dp){

$id = get_the_ID();  //This is where I want to figure out a way to find the user id, this won\'t work.
$key = "user_gender";
$single = true;

$gender = get_user_meta($id, $key, $single);
if($gender == \'Male\'){
    $myavatar = \'http://localhost:81/matrimony/wp-content/uploads/2020/04/groom.png\';
}else{
    $myavatar = \'http://localhost:81/matrimony/wp-content/uploads/2020/04/bride.png\';
 }
 return $myavatar;
}

add_filter( \'get_avatar\', \'dynamic_user_gravatar\');
此外,我发现我可以通过参数“$current\\u dp”返回相关用户的化身,如果没有直接的方法来获取用户id,我们可以使用$current\\u dp从化身中检索用户id吗``

1 个回复
SO网友:shimii

我终于想出了答案:D多亏了@Jos

function ht1_change_avatar($args, $id_or_email) {
    $gender = get_user_meta($id_or_email, \'user_gender\', true);
    if($gender==\'Male\'){
        $myavatar = \'http://localhost:81/matrimony/wp-content/uploads/2020/04/groom.png\';
    }else{
        $myavatar = \'http://localhost:81/matrimony/wp-content/uploads/2020/04/bride.png\';
    }
    $args[\'url\'] = $myavatar;
    return $args;
}
add_filter(\'get_avatar_data\', \'ht1_change_avatar\', 100, 2);

相关推荐

Gravatar image url is wrong?

我有一段代码可以拉用户的坟墓:if( $current_user->ID == 0 ) { // Not logged in. echo \'<p><img src=\"\'.get_stylesheet_directory_uri().\'/img/wpb-default-gravatar.png\" alt=\"תמונת פרופיל\"></p>\'; echo \'<p>רוצה למכור?&