designbymerovingi

myCRED Recurring payout based on role

Mar 26th, 2015
395
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.10 KB | None | 0 0
  1. add_filter( 'mycred_run_this', 'mycred_pro_payout_by_role' );
  2. function mycred_pro_payout_by_role( $request ) {
  3.  
  4. // Only applicable for recurring payouts
  5. if ( $request['ref'] != 'recurring_payout' ) return $request;
  6.  
  7. // Get user role
  8. $user_id = absint( $request['user_id'] );
  9. $user = get_userdata( $user_id );
  10.  
  11. // Set various roles recurring points payouts.
  12.  
  13. // ADMIN get 0 points
  14. if ( in_array( 'administrator', $user->roles ) )
  15. $request['amount'] = 0;
  16.  
  17. // Subscriber Basic get 10 points
  18. elseif ( in_array( 'subscriber', $user->roles ) )
  19. $request['amount'] = 10;
  20.  
  21. // Subscriber LVL 1 get 100 points
  22. elseif ( in_array( 'subscriber-lvl-1', $user->roles ) )
  23. $request['amount'] = 100;
  24.  
  25. // Subscriber LVL 2 get 200 points
  26. elseif ( in_array( 'subscriber-lvl-2', $user->roles ) )
  27. $request['amount'] = 200;
  28.  
  29. // Subscriber LVL 3 get 500 points
  30. elseif ( in_array( 'subscriber-lvl-3', $user->roles ) )
  31. $request['amount'] = 500;
  32.  
  33. // Subscriber LVL 4 get 1000 points
  34. elseif ( in_array( 'subscriber-lvl-4', $user->roles ) )
  35. $request['amount'] = 1000;
  36.  
  37. return $request;
  38.  
  39. }
Advertisement
Add Comment
Please, Sign In to add comment