WoocommerceWordpress

Stay logged in for a year in woocommerce and wordpress

Stay logged in for a year in woocommerce and wordpress

This code snippet contains two parts.

The first part sets a filter on auth_cookie_expiration which is a WordPress filter hook that allows you to modify the duration of the authentication cookie. This filter hook is triggered when WordPress generates the authentication cookie for a user who logs in to your website. By default, WordPress sets this cookie to expire in two weeks.

The stay_logged_in_for_1_year function that is hooked onto auth_cookie_expiration returns a value of 31556926 which is the equivalent of one year in seconds. This means that when a user logs in to your website, their authentication cookie will be set to expire in one year instead of the default two weeks.

The second part of the code adds a hidden field named “rememberme” with a value of “1” to the user login form using the um_after_login_fields action hook. This field is used by WordPress to remember a user’s login session for an extended period of time, in this case, one year. When a user logs in with the “remember me” option checked, WordPress will keep them logged in for a longer period of time than when this option is not checked.

By combining these two parts, this code snippet creates a “stay logged in for one year” functionality on a WordPress website.

The default cookie duration for WordPress is 14 days.

When extending the cookie duration, there are a few things to keep in mind:

  1. Security: Extending the cookie duration may increase the risk of a security breach as the longer a user remains logged in, the more vulnerable their account may be to unauthorized access.
  2. User Experience: Extending the cookie duration may improve the user experience as users will not need to log in as frequently, but it can also result in a negative experience if a user forgets to log out of their account on a shared device or public computer.
  3. Compliance: If you are subject to regulations such as GDPR, you must ensure that you have a legal basis for processing user data, including the storage of cookies. You should consult with legal counsel to ensure that you are compliant with relevant regulations.
    
add_filter( 'auth_cookie_expiration', 'keep_me_logged_in_for_1_year' ); function keep_me_logged_in_for_1_year( $expirein ) { return 31556926 ; // 2 years in seconds } function wpsnippet_login_checkbox() { if (is_account_page()) { ?> <style> .woocommerce-form-login__rememberme{ display: none !important;} </style> <script> document.getElementById('rememberme').checked = true; document.getElementById('user_login').focus(); </script> <?php } } add_filter('wp_footer', 'wpsnippet_login_checkbox');

Leave a Reply