我仍然在考虑buddypress,到目前为止还不错,但我遇到了一个障碍,我希望某些被标记为“专家”的用户能够自动接受人们提出的任何朋友请求。
我已经找到了几个与此相关的函数,但我认为我缺少了一些可以简化此操作的功能,例如设置常量或重写$bp全局函数的一部分…
到目前为止,我掌握的情况如下:
function bp_auto_accept_friend_request( $friendship_id, $friendship_initiator_id, $friendship_friend_id ) {
if ( is_user_expert( $friendship_friend_id ) ) {
// force add
friends_accept_friendship( $friendship_id );
friends_add_friend( $friendship_initiator_id, $friendship_friend_id, true );
}
}
add_action(\'friends_friendship_requested\', \'bp_auto_accept_friend_request\', 200, 3);
有没有人能告诉我,我应该在哪里做得更好、更无缝,就像主设置被设置为绕过请求过程一样?
最合适的回答,由SO网友:Bainternet 整理而成
更新试试这个
function bp_auto_accept_friend_request( $friendship_id, $friendship_initiator_id, $friendship_friend_id ) {
$friendship_status = BP_Friends_Friendship::check_is_friend( $friendship_initiator_id, $friendship_friend_id );
if ( \'not_friends\' == $friendship_status ) {
if ( is_user_expert( $friendship_friend_id ) ) {
// force add
friends_add_friend( $friendship_initiator_id, $friendship_friend_id, true );
friends_accept_friendship( $friendship_id );
}
}
}
add_action(\'friends_friendship_requested\', \'bp_auto_accept_friend_request\', 200, 3);
这样,如果他们还不是朋友,我们只调用$force=true的friends\\u add\\u friend函数。