Action Hooks
php// Fired after a user registers (before email verification)
do_action( 'oregister_user_registered', $user_id );
// Fired after successful login
do_action( 'oregister_login', $user_id );
// Fired when XP is awarded
do_action( 'oregister_xp_awarded', $user_id, $amount, $action );
// Fired when a badge is earned
do_action( 'oregister_badge_earned', $user_id, $badge_id );
// Fired when a user follows another
do_action( 'oregister_user_followed', $follower_id, $following_id );
// Fired when a streak is updated
do_action( 'oregister_streak_updated', $user_id, $current_streak );
// Fired when a direct message is sent
do_action( 'oregister_message_sent', $sender_id, $receiver_id );
// Fired when a user's profile is updated
do_action( 'oregister_profile_updated', $user_id );
Usage Examples
php// Send a Slack notification when a user registers
add_action( 'oregister_user_registered', function( $user_id ) {
$user = get_userdata( $user_id );
// ... send Slack notification
}, 10, 1 );
// Award custom XP when WooCommerce order completes
add_action( 'woocommerce_order_status_completed', function( $order_id ) {
$order = wc_get_order( $order_id );
$user_id = $order->get_user_id();
if ( $user_id ) {
\ORegister\Gamification\XPEngine::award( $user_id, 100, 'woo_purchase' );
}
});
// Run code when a badge is earned
add_action( 'oregister_badge_earned', function( $user_id, $badge_id ) {
// Custom notification, webhook, etc.
}, 10, 2 );