sociallyxceptional (@sociallyxceptional)

Forum Replies Created

Viewing 1 replies (of 1 total)
  • In reply to: login issues

    @sociallyxceptional

    Participant

    I would also like to get people automatically redirected to a page inside the forum instead of the WP dashboard, but it is not working.

    I have tried using Peters Login Redirect and that has not worked. I have also tried using this code inside the Snippets, which isn’t working either:

    // Send new users to a special page
    function redirectOnFirstLogin( $custom_redirect_to, $redirect_to, $requested_redirect_to, $user )
    {
    // URL to redirect to
    $redirect_url = ‘https://arianegoodwin.com/forums/curiosity-cocktails-topic-map/’;
    // How many times to redirect the user
    $num_redirects = 1;
    // If implementing this on an existing site, this is here so that existing users don’t suddenly get the “first login” treatment
    // On a new site, you might remove this setting and the associated check
    // Alternative approach: run a script to assign the “already redirected” property to all existing users
    // Alternative approach: use a date-based check so that all registered users before a certain date are ignored
    // 172800 seconds = 48 hours
    $message_period = 172800;

    /*
    Cookie-based solution: captures users who registered within the last n hours
    The reason to set it as “last n hours” is so that if a user clears their cookies or logs in with a different browser,
    they don’t get this same redirect treatment long after they’re already a registered user
    */
    /*

    $key_name = ‘redirect_on_first_login_’ . $user->ID;

    if( strtotime( $user->user_registered ) > ( time() – $message_period )
    && ( !isset( $_COOKIE[$key_name] ) || intval( $_COOKIE[$key_name] ) < $num_redirects )
    )
    {
    if( isset( $_COOKIE[$key_name] ) )
    {
    $num_redirects = intval( $_COOKIE[$key_name] ) + 1;
    }
    setcookie( $key_name, $num_redirects, time() + $message_period, COOKIEPATH, COOKIE_DOMAIN );
    return $redirect_url;
    }
    */
    /*
    User meta value-based solution, stored in the database
    */
    $key_name = ‘redirect_on_first_login’;
    // Third parameter ensures that the result is a string
    $current_redirect_value = get_user_meta( $user->ID, $key_name, true );
    if( strtotime( $user->user_registered ) > ( time() – $message_period )
    && ( ” == $current_redirect_value || intval( $current_redirect_value ) < $num_redirects )
    )
    {
    if( ” != $current_redirect_value )
    {
    $num_redirects = intval( $current_redirect_value ) + 1;
    }
    update_user_meta( $user->ID, $key_name, $num_redirects );
    return $redirect_url;
    }
    else
    {
    return $custom_redirect_to;
    }
    }

    add_filter( ‘rul_before_user’, ‘redirectOnFirstLogin’, 10, 4 );

Viewing 1 replies (of 1 total)