wp_login_form() – Provides a simple login form for use anywhere within WordPress.

You appear to be a bot. Output may be restricted

Description

Provides a simple login form for use anywhere within WordPress.

The login form HTML is echoed by default. Pass a false value for $echo to return it instead.

Usage

$void|string = wp_login_form( $args );

Parameters

$args
( array ) optional – { Optional. Array of options to control the form output. Default empty array.
$echo
( bool ) optional – Whether to display the login form or return the form HTML code. Default true (echo).
$redirect
( string ) optional – URL to redirect to. Must be absolute, as in "https://example.com/mypage/". Default is to redirect back to the request URI.
$form_id
( string ) optional – ID attribute value for the form. Default 'loginform'.
$label_username
( string ) optional – Label for the username or email address field. Default 'Username or Email Address'.
$label_password
( string ) optional – Label for the password field. Default 'Password'.
$label_remember
( string ) optional – Label for the remember field. Default 'Remember Me'.
$label_log_in
( string ) optional – Label for the submit button. Default 'Log In'.
$id_username
( string ) optional – ID attribute value for the username field. Default 'user_login'.
$id_password
( string ) optional – ID attribute value for the password field. Default 'user_pass'.
$id_remember
( string ) optional – ID attribute value for the remember field. Default 'rememberme'.
$id_submit
( string ) optional – ID attribute value for the submit button. Default 'wp-submit'.
$remember
( bool ) optional – Whether to display the "rememberme" checkbox in the form.
$value_username
( string ) optional – Default value for the username field. Default empty.
$value_remember
( bool ) optional – Whether the "Remember Me" checkbox should be checked by default. Default false (unchecked). }

Returns

void|string Void if 'echo' argument is true, login form HTML if 'echo' is false.

Source

File name: wordpress/wp-includes/general-template.php


Lines:

1 to 100 of 125
function wp_login_form( $args = array() ) {
  $defaults = array(
    'echo'           => true,
    // Default 'redirect' value takes the user back to the request URI.
    'redirect'       => ( is_ssl() ? 'https://' : 'http://' ) . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'],
    'form_id'        => 'loginform',
    'label_username' => __( 'Username or Email Address' ),
    'label_password' => __( 'Password' ),
    'label_remember' => __( 'Remember Me' ),
    'label_log_in'   => __( 'Log In' ),
    'id_username'    => 'user_login',
    'id_password'    => 'user_pass',
    'id_remember'    => 'rememberme',
    'id_submit'      => 'wp-submit',
    'remember'       => true,
    'value_username' => '',
    // Set 'value_remember' to true to default the "Remember me" checkbox to checked.
    'value_remember' => false,
  );

  
/**
 * Filters the default login form output arguments.
 *
 * @since 3.0.0
 *
 * @see wp_login_form()
 *
 * @param array $defaults An array of default login form arguments.
 */
  $args = wp_parse_args( $args, apply_filters( 'login_form_defaults', $defaults ) );

  
/**
 * Filters content to display at the top of the login form.
 *
 * The filter evaluates just following the opening form tag element.
 *
 * @since 3.0.0
 *
 * @param string $content Content to display. Default empty.
 * @param array  $args    Array of login form arguments.
 */
  $login_form_top = apply_filters( 'login_form_top', '', $args );

  
/**
 * Filters content to display in the middle of the login form.
 *
 * The filter evaluates just following the location where the 'login-password'
 * field is displayed.
 *
 * @since 3.0.0
 *
 * @param string $content Content to display. Default empty.
 * @param array  $args    Array of login form arguments.
 */
  $login_form_middle = apply_filters( 'login_form_middle', '', $args );

  
/**
 * Filters content to display at the bottom of the login form.
 *
 * The filter evaluates just preceding the closing form tag element.
 *
 * @since 3.0.0
 *
 * @param string $content Content to display. Default empty.
 * @param array  $args    Array of login form arguments.
 */
  $login_form_bottom = apply_filters( 'login_form_bottom', '', $args );

  $form =
    sprintf(
      '<form name="%1$s" id="%1$s" action="%2$s" method="post">',
      esc_attr( $args['form_id'] ),
      esc_url( site_url( 'wp-login.php', 'login_post' ) )
    ) .
    $login_form_top .
    sprintf(
      '<p class="login-username">
				<label for="%1$s">%2$s</label>
				<input type="text" name="log" id="%1$s" autocomplete="username" class="input" value="%3$s" size="20" />
			</p>',
      esc_attr( $args['id_username'] ),
      esc_html( $args['label_username'] ),
      esc_attr( $args['value_username'] )
    ) .
    sprintf(
      '<p class="login-password">
				<label for="%1$s">%2$s</label>
				<input type="password" name="pwd" id="%1$s" autocomplete="current-password" class="input" value="" size="20" />
			</p>',
      esc_attr( $args['id_password'] ),
      esc_html( $args['label_password'] )
    ) .
    $login_form_middle .
    ( $args['remember'] ?
      sprintf(

 View on GitHub View on Trac