web-dev-qa-db-ja.com

ログアウト/ログインリダイレクトCSSの問題

私はWordPress Multisiteを使っています。 wp_logout_url()を使用すると、ログインページにリダイレクトされますが、どういうわけかスタイルが適用されずに別のログインページで終了します

   <a href="<?php echo wp_logout_url(); ?>" title="Logout">Logout</a>

それが私が呼んでいる唯一のログアウト機能です。

そして私のログイン機能はこのようになります:

  // 1. Custom login CSS
function my_login_stylesheet() { ?>
<link rel="stylesheet" id="custom_wp_admin_css"  href="<?php echo get_bloginfo( 'stylesheet_directory' ) . '/style.css'; ?>" type="text/css" media="all" />
<?php }
add_action( 'login_enqueue_scripts', 'my_login_stylesheet' );

// 2. Change logo URL
add_filter('login_headerurl', 'my_custom_url');
function my_custom_url(){
return "http://mydomain.com/domain";
}

// 3. Add personal message to login

function custom_login_message() {
$message = '<p class="message">KOMM - App</p>';
return $message;
}
add_filter('login_message', 'custom_login_message');

// 4. Change login button text

add_action( 'login_form', 'wpse17709_login_form' );
function wpse17709_login_form()
{
    add_filter( 'gettext', 'wpse17709_gettext', 10, 2 );
}
function wpse17709_gettext( $translation, $text )
{
    if ( 'Log In' == $text ) {
        return 'OK';
    }
    return $translation;
}

// 5. Redirect user to index-page after login
add_filter('login_redirect', 'plugin_admin_redirect'); 
function plugin_admin_redirect($redirect_to, $url_redirect_to = '', $user = null) { 
    return get_option('siteurl');

} 

CSSを適用するには、関数1と2をwp_logout_url()関数に適用する必要があると思います。私は長い間試みてきました。

ログインページ:

Login page with css applied before login

そしてログアウトすると次のスクリーンショットに行きます。

enter image description here

リダイレクト先のログアウト/ログインページ:

Login/logout without stylesheet applied

誰かが説明してくれるか、正しい道をたどることができれば幸いです。

注:

ログインリンク:

/wp-login.php?redirect_to=http%3A%2F%2Fdesignmobile.se%2Fgomobile%2Fkrisdemo%2Fwp-admin%2F&reauth=1

ログアウトリンク:

/wp-login.php?action=logout&redirect_to=http%3A%2F%2Fdesignmobile.se%2Fgomobile%2Fkrisdemo%2F&_wpnonce=17d70b468f
4
M3o

現在使用しているページにリダイレクトしたい場合は、

wp_logout_url( $_SERVER['REQUEST_URI'] );

または

wp_logout_url( get_permalink() );

あるいは他のサイトにリダイレクトしたい場合は allowed_redirect_hosts 関数を使用してください。

1
kallekillen