• Heya,
    So I am using wp_login_form() to pull the login form into my theme but I need to override it like I do with searchform.php – I can’t seem to find any documentation on this, can someone help me? Thanks!

Viewing 4 replies - 1 through 4 (of 4 total)
  • You’ll need to modify the source file or set the function to not echo and modify the string.


    https://codex.www.ads-software.com/Function_Reference/wp_login_form

    Thread Starter Spencer Hill

    (@ws5f3dj7)

    Couldn’t I overwrite that function from functions.php somehow?

    Thread Starter Spencer Hill

    (@ws5f3dj7)

    I found this link for overwriting WordPress functions with custom ones.

    https://www.catswhocode.com/blog/how-to-overwrite-wordpress-core-functions

    I forgot to mention. You can write a function similar to wp_login_form() in your functions.php and use that instead.

    You can’t overwrite anything you want. Those hooks mentioned in the article are pre-defined and only allows modifications to certain parts of the code.

    If you look at wp_login_form() in /wp-includes/general-template.php

    /**
     * Provides a simple login form for use anywhere within WordPress. By default, it echoes
     * the HTML immediately. Pass array('echo'=>false) to return the string instead.
     *
     * @since 3.0.0
     * @param array $args Configuration options to modify the form output
     * @return Void, or string containing the form
     */
    function wp_login_form( $args = array() ) {
    	$defaults = array( 'echo' => true,
    						'redirect' => site_url( $_SERVER['REQUEST_URI'] ), // Default redirect is back to the current page
    	 					'form_id' => 'loginform',
    						'label_username' => __( 'Username' ),
    						'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' => '',
    						'value_remember' => false, // Set this to true to default the "Remember me" checkbox to checked
    					);
    	$args = wp_parse_args( $args, apply_filters( 'login_form_defaults', $defaults ) );
    
    	$form = '
    		<form name="' . $args['form_id'] . '" id="' . $args['form_id'] . '" action="' . site_url( 'wp-login.php', 'login' ) . '" method="post">
    			' . apply_filters( 'login_form_top', '' ) . '
    			<p class="login-username">
    				<label for="' . esc_attr( $args['id_username'] ) . '">' . esc_html( $args['label_username'] ) . '</label>
    				<input type="text" name="log" id="' . esc_attr( $args['id_username'] ) . '" class="input" value="' . esc_attr( $args['value_username'] ) . '" size="20" tabindex="10" />
    			</p>
    			<p class="login-password">
    				<label for="' . esc_attr( $args['id_password'] ) . '">' . esc_html( $args['label_password'] ) . '</label>
    				<input type="password" name="pwd" id="' . esc_attr( $args['id_password'] ) . '" class="input" value="" size="20" tabindex="20" />
    			</p>
    			' . apply_filters( 'login_form_middle', '' ) . '
    			' . ( $args['remember'] ? '<p class="login-remember"><label><input name="rememberme" type="checkbox" id="' . esc_attr( $args['id_remember'] ) . '" value="forever" tabindex="90"' . ( $args['value_remember'] ? ' checked="checked"' : '' ) . ' /> ' . esc_html( $args['label_remember'] ) . '</label></p>' : '' ) . '
    			<p class="login-submit">
    				<input type="submit" name="wp-submit" id="' . esc_attr( $args['id_submit'] ) . '" class="button-primary" value="' . esc_attr( $args['label_log_in'] ) . '" tabindex="100" />
    				<input type="hidden" name="redirect_to" value="' . esc_attr( $args['redirect'] ) . '" />
    			</p>
    			' . apply_filters( 'login_form_bottom', '' ) . '
    		</form>';
    
    	if ( $args['echo'] )
    		echo $form;
    	else
    		return $form;
    }

    there are only filter hooks that allows you to add codes in between the input fields.

Viewing 4 replies - 1 through 4 (of 4 total)
  • The topic ‘How to over write wp login from (front end), need help…’ is closed to new replies.