使用wp_redirect()
和admin_url()
如果自定义buddypress用户元数据未完全填充,则将用户重定向到其配置文件页面。
从另一个答案中,我看到了以下功能:bp_get_profile_field_data()
. 因此,您可以轻松地构建一个模板标记,它可以为您提供完整的好友用户元数据集,或者只需FALSE
返回
如果你得到FALSE
返回,然后可以重定向用户。在get_user_metadata
-胡克,你已经拿到了$current_user
设置,以便可以在template_redirect
-钩
function wpse57054_is_buddy_complete( $buddy_user_fields = array() )
{
// convert single field keys to arrays
$buddy_user_fields = (array) $buddy_user_fields;
foreach ( $buddy_user_fields as $buddy_user_meta )
{
$data = bp_get_profile_field_data( array(
\'field\' => $buddy_user_meta,
\'user_id\' => wp_get_current_user()->id,
) );
// One field empty/not filled: Abort and return FALSE
if ( empty( $data ) )
return false;
}
// Return the whole data set
return $data;
}