簡體   English   中英

Wordpress-以簡碼顯示登錄表單

[英]Wordpress - Displaying login form in shortcode

我嘗試了wordpress堆棧,但是沒有運氣,以為我會在這里嘗試...

因此,我試圖在我的頁面之一上顯示默認wordpress登錄表單的工作版本。 據我所知,functions.php文件中包含創建短代碼的代碼,該代碼可以成功運行,但是提交表單后,它只是刷新頁面,而不會重定向到我指定的網址...任何人都可以看看為什么它可能無法正常工作?

這是我放入functions.php文件中的函數:

//Login form Shortcode
add_shortcode( 'login-form', 'my_login_form_shortcode' );
/**
 * Displays a login form.
 *
 * @since 0.1.0
 * @uses wp_login_form() Displays the login form.
 */
function my_login_form_shortcode( $atts, $content = null ) {

    $defaults = array(      "redirect"              =>  site_url( $_SERVER['REQUEST_URI'] )
                        );

        extract(shortcode_atts($defaults, $atts));
        if (!is_user_logged_in()) {
        $content = wp_login_form( array( 'echo' => false, 'redirect' => $redirect ) );
        }
    return $content;
}

然后,將其放置在所需的頁面中,如下所示:

[login-form redirect="https://myurl.com"]

但是,即使我現在已成功登錄,也沒有刷新我到正確的頁面,而是刷新了頁面...任何想法?

您只需在下面添加此代碼

add_action( 'login_form_middle', 'add_lost_password_link' );
function add_lost_password_link() {
    return '<a href="/wp-login.php?action=lostpassword">Forgot Your Password?</a>';
}

if(!function_exists('vivid_login_page'))
{
  function vivid_login_page()
  {
      $args = array(
        'echo'           => true,
        'remember'       => true,
        'redirect'       => ( is_ssl() ? 'https://' : 'http://' ) . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'],
        'form_id'        => 'loginform',
        'id_username'    => 'user_login',
        'id_password'    => 'user_pass',
        'id_remember'    => 'rememberme',
        'id_submit'      => 'wp-submit',
        'label_username' => __( 'Username or Email Address' ),
        'label_password' => __( 'Password' ),
        'label_remember' => __( 'Remember Me' ),
        'label_log_in'   => __( 'Log In' ),
        'value_username' => '',
        'value_remember' => false
    );
    wp_login_form($args);
    add_lost_password_link();
  }
  add_shortcode('vivid-login-page', 'vivid_login_page');
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM