如何设置BuddyPress头像的默认头像

时间:2012-06-02 作者:Pollux Khafra

我需要一种为buddypress设置默认化身的方法bp_core_fetch_avatar. 使用常规get_avatar 您只需设置$default 但是我找不到任何方法来使用buddypress的函数。例如,我使用此功能获取帖子作者的全尺寸头像,但添加default => "mysite.com/default.png" 没有通过。

function fod_post_author_avatar() {
global $post;

if ( function_exists(\'bp_core_fetch_avatar\') ) {
    echo apply_filters( \'bp_post_author_avatar\', bp_core_fetch_avatar( array( \'item_id\' => $post->post_author, \'type\' => \'full\', \'width\' => "130px", \'height\' => "130px", default => "http://mysite.com/wp-content/themes/123/images/default-avatar.png" ) ) ); 
} else if ( function_exists(\'get_avatar\') ) {
    get_avatar();
}
}

2 个回复
SO网友:Nicolai Grossherr

正如@shanebp所说:

您可以使用BP\\u avatar\\u default定义整个站点的默认化身

为此,您可以定义常量BP_AVATAR_DEFAULT 和/或BP_AVATAR_DEFAULT_THUMB 内部bp-custom.php 如buddypress codex页面所述Customizing BuddyPress Avatars, 例如:

Code:

$upload_dir = wp_upload_dir();  
$url_default_avatar = $upload_dir[\'baseurl\'] . \'/defaults/buddypress/default-member-avatar.png\';  
$url_default_avatar_thumb = $upload_dir[\'baseurl\'] . \'/defaults/buddypress/default-member-avatar-thumb.png\';  
define ( \'BP_AVATAR_DEFAULT\', $url_default_avatar );  
define ( \'BP_AVATAR_DEFAULT_THUMB\', $url_default_avatar_thumb );
这里描述了设置默认化身的另一种方法answer 一个(非常)相似的问题。为此,gravatar的使用被禁用,之后您可以轻松更改默认(成员)化身。这种方法的一个优点是,默认的群化身也可以很容易地更改-这就是原因,否则它将是多余的,我正在复制这种方法,因为群化身不是我引用的答案的一部分。也就是说,例如,该方法的使用如下:

Code:

// disable gravatar  
add_filter( \'bp_core_fetch_avatar_no_grav\', \'__return_true\' );

// default member avatar  
function wpse_54037_default_avatar_avatar() {
    $upload_dir = wp_upload_dir();
    return $upload_dir[\'baseurl\'] . \'/defaults/buddypress/default-member-avatar.png\';
}
add_filter( \'bp_core_default_avatar_user\', \'wpse_54037_default_avatar_avatar\' );

// default group avatar
function wpse_54037_default_group_avatar() {
    $upload_dir = wp_upload_dir();
    return $upload_dir[\'baseurl\'] . \'/defaults/buddypress/default-group-avatar.png\';
}
add_filter( \'bp_core_default_avatar_group\', \'wpse_54037_default_group_avatar\' );

SO网友:shanebp

我需要一种方法来设置buddypress的bp\\u core\\u fetch\\u头像的默认头像。

为什么?

添加默认值=>“mysite.com/default.png”未通过

该BP函数中没有“默认”选项http://phpxref.ftwr.co.uk/buddypress/nav.html?bp-core/bp-core-avatars.php.source.html#l78

您可以使用BP\\u avatar\\u default定义整个站点的默认化身

结束

相关推荐

覆盖BuddyPress主题函数

我用的是buddypress主题buddyboss. 主要原因是这个主题能够管理一个图片库(效果很好)。现在我想在members循环中调用picture函数。buddyboss的一位管理员告诉我:“您需要buddy\\u boss\\u pics.php中的函数。具体来说,您需要从第285行开始使用函数buddyboss\\u pics\\u screen\\u picture\\u grid\\u content()。您需要编辑文件以使用members循环,因为它当前使用的是displayed\\u u