Remember Me Controls

Author: Scott Reilly
Version: 1.9
First released: 2010-09-27
Last update: 2020-07-26
Compatibility: WP 4.9 – 5.4.2
Download: [ zip ]
Description:

Have "Remember Me" checked by default on the login page and configure how long a…

Extended Description

Take control of the “Remember Me” login feature for WordPress by having it enabled by default, customize how long users are remembered, or disable this built-in feature by default.

For those unfamiliar, “Remember Me” is a checkbox present when logging into WordPress. If checked, WordPress will remember the login session for 14 days. If unchecked, the login session will be remembered for only 2 days. Once a login session expires, WordPress will require you to log in again if you wish to continue using the admin section of the site.

This plugin provides three primary controls over the behavior of the “Remember Me” feature:

  • Automatically check “Remember Me” : The ability to have the “Remember Me” checkbox automatically checked when the login form is loaded (it isn’t checked by default).
  • Customize the duration of the “Remember Me” : The ability to customize how long WordPress will remember a login session when “Remember Me” is checked, either forever or a customizable number of hours.
  • Disable “Remember Me” : The ability to completely disable the feature, preventing the checkbox from appearing and restricting all login sessions to one day.

NOTE: WordPress remembers who you are based on cookies stored in your web browser. If you use a different web browser, clear your cookies, use a browser on a different machine, or uninstall/reinstall (and possibly even just restarting) your browser then you will have to log in again since WordPress will not be able to locate the cookies needed to identify you.

Compatibility

Other than the plugins listed below, compatibility has not been tested or attempted for any other third-party plugins that provide their own login widgets or login handling.

Special handling has been added to provide compatibility with the following plugins:

Links: Plugin Homepage | Plugin Directory Page | GitHub | Author Homepage

Find out more at the plugin’s WordPress Plugin Repository page.

Screenshots

Click to see full-size image.

  1. A screenshot of the plugin's admin settings page.

    A screenshot of the plugin’s admin settings page.

  2. A screenshot of the login form with "Remember Me" checked by default

    A screenshot of the login form with “Remember Me” checked by default

  3. A screenshot of the login form with "Remember Me" removed

    A screenshot of the login form with “Remember Me” removed

Installation

  1. Whether installing or updating, whether this plugin or any other, it is always advisable to back-up your data before starting
  2. Install via the built-in WordPress plugin installer. Or download and unzip remember-me-controls.zip inside the plugins directory for your site (typically wp-content/plugins/)
  3. Activate the plugin through the ‘Plugins’ admin menu in WordPress
  4. Go to “Settings” -> “Remember Me” and configure the settings

Frequently Asked Questions

Q. How long does WordPress usually keep me logged in?
A. By default, if you log in without “Remember Me” checked, WordPress keeps you logged in for up to 2 days. If you check “Remember Me” (without this plugin active), WordPress keeps you logged in for up to 14 days.

Q. Why am I being asked to log in again even though I’ve configured the plugin to remember me forever (or an otherwise long enough duration that hasn’t been met yet)?
A. WordPress remembers who you are based on cookies stored in your web browser. If you use a different web browser, clear your cookies, use a browser on a different machine, the site owner invalidates all existing login sessions, or you uninstall/reinstall (and possibly even just restart) your browser then you will have to log in again since WordPress will not be able to locate the cookies needed to identify you.

Q. How can I set the session duration to less than an hour?
A. You can’t (and probably shouldn’t). With a session length of less than an hour you risk timing out users too quickly.

Q. Do changes to the remember me duration take effect for all current login sessions?
A. No. The duration for which a login cookie is valid is defined within the cookie when it gets created (which is when you log in). Changing the setting for the remember me duration will only affect cookies created thereafter. You can log out and then log back in if you want the newly configured remember me duration to apply to your session.

Q. What plugins is this plugin compatible with?
A. Special handling has been added to provide compatibility with the following plugins:

Q. Is this plugin GDPR-compliant?
A. Yes. This plugin does not collect, store, or disseminate any information from any users or site visitors.

Q. Does this plugin include unit tests?
A. Yes.

Release Log

1.9 (2020-07-20)

  • This minor release adds support for using commas when setting the remember me duration, adds HTML5 compliance when supported by the theme, improves settings help text and other documentation, updates its plugin framework, adds a TODO.md file, updates a few URLs to be HTTPS, expands unit testing, updates compatibility to be WP 4.9 through 5.4+, and other minor behind-the-scenes tweaks.

Details:

  • New: Add HTML5 compliance by omitting type attribute to ‘script’ and ‘style’ tags when the theme supports ‘html5’
  • New: Add help text to settings whose value change won’t take effect until subsequent logins regarding as much
  • New: Add TODO.md and move existing TODO list from top of main plugin file into it (and add items to it)
  • Change: Allow use of commas in user-submitted value for remember_me_duration setting
  • Change: Update JavaScript coding syntax
  • Change; Add help text to the top of the settings page
  • Change: Use a superscript for footnote asterisk and extract markup from translatable string
  • Change: Update plugin framework to 051
    • 051:
    • Allow setting integer input value to include commas
    • Use number_format_i18n() to format integer value within input field
    • Update link to coffee2code.com to be HTTPS
    • Update readme_url() to refer to plugin’s readme.txt on plugins.svn.wordpress.org
    • Remove defunct line of code
    • 050:
    • Allow a hash entry to literally have ‘0’ as a value without being entirely omitted when saved
    • Output donation markup using printf() rather than using string concatenation
    • Update copyright date (2020)
    • Note compatibility through WP 5.4+
    • Drop compatibility with version of WP older than 4.9
  • Change: Tweak text on help tab
  • Change: Add a few new FAQ entries and amend another
  • Change: Include another example scenario in which login cookies could be invalidated
  • Change: Tweak verbiage of various documentation
  • Change: Note compatibility through WP 5.4+
  • Change: Drop compatibility with versions of WP older than 4.9
  • Change: Update links to coffee2code.com to be HTTPS
  • Unit tests:
    • New: Add get_default_hooks() as a helper method for getting the default hooks
    • New: Add tests for add_css(), add_js(), help_tabs_content(), maybe_add_hr(), options_page_description()
    • New: Add test for setting name
    • New: Add test for hook registering
    • Change: Store plugin instance in test object to simplify referencing it
    • Change: Remove unnecessary unregistering of hooks in tearDown()
    • Change: Remove duplicative reset_options() call
    • Change: Use HTTPS for link to WP SVN repository in bin script for configuring unit tests
  • Change: Updated screenshot

1.8.1 (2020-01-01)

  • Change: Note compatibility through WP 5.3+
  • Change: Update copyright date (2020)
  • Change: Tweak changelog formatting for v1.8 release

1.8 (2019-06-28)

  • This release is a minor update that verifies compatibility through WordPress 5.2+ and makes minor behind-the-scenes improvements.

Details:

  • Change: Initialize plugin on plugins_loaded action instead of on load
  • Change: Update plugin framework to 049
    • 049:
    • Correct last arg in call to add_settings_field() to be an array
    • Wrap help text for settings in label instead of p
    • Only use label for help text for checkboxes, otherwise use p
    • Ensure a textarea displays as a block to prevent orphaning of subsequent help text
    • Note compatibility through WP 5.1+
    • Update copyright date (2019)
    • 048:
    • When resetting options, delete the option rather than setting it with default values
    • Prevent double “Settings reset” admin notice upon settings reset
  • New: Add CHANGELOG.md file and move all but most recent changelog entries into it
  • Unit tests:
    • Change: Update unit test install script and bootstrap to use latest WP unit test repo
    • Change: Ensure settings get reset before assigning newly set values
    • Fix: Fix broken unit test
  • Change: Note compatibility through WP 5.2+
  • Change: Add link to plugin’s page in Plugin Directory to README.md
  • Change: Update copyright date (2019)
  • Change: Update License URI to be HTTPS
  • Change: Split paragraph in README.md’s “Support” section into two

Copyright & Disclaimer

Copyright © 2010-2020 by Scott Reilly (aka coffee2code)

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Discussion / Support

Have any questions, comments, or suggestions? Please provide them via the plugin’s WordPress.org support forum. I’ll do my best to reply in a timely fashion and help as best I can.

Unfortunately, I cannot provide guaranteed support, nor do I provide support via any other means.

Was this plugin useful useful to you? Consider giving it a rating. If you’re inclined to give it a poor rating, please first post to the support forum to give me a chance to address or explain the situation.