przekierowanie — Jak zmienić domyślny link do wylogowania w administratorze WordPress
WordPress Development Stack Exchange to strona z pytaniami i odpowiedziami dla programistów i administratorów WordPress. Rejestracja zajmuje tylko minutę.
Zarejestruj się, aby dołączyć do tej społeczności
Każdy może zadać pytanie
Każdy może odpowiedzieć
Najlepsze odpowiedzi są głosowane i wznoszą się na szczyt
Spytał
Oglądane16 tys. razy
Chcę użyć innego linku do wylogowania, ponieważ mam /wp-admin/*
chronione hasłem ht. Czy jest na to sposób? Coś w rodzaju tworzenia niestandardowej strony, takiej jak site.com/logout
następnie użyć go jako mojego nowego linku do wylogowania?
Dzięki!
Możesz filtrować 'logout_url'
i zwróć wartość niestandardową, jeśli jesteś w obszarze administracyjnym:
add_filter( 'logout_url', 'wpse_58453_logout_url' );
function wpse_58453_logout_url( $default )
{
// set your URL here
return is_admin() ? ' : $default;
}
9
Myślę, że powinieneś dodać regułę przepisywania w swoim pliku htaccess w ten sposób.
RewriteRule ^logout/(.*) /wp-login.php?action=logout&_wpnonce=$1 [QSA,L]
To zadziałało dla mnie przekierowanie na stronę główną:
add_action('wp_logout','unlog');
function unlog(){
wp_redirect( site_url() );
exit();
}
1
Znalazłem rozwiązanie tutaj:
I działa świetnie!
add_filter( 'logout_url', 'my_logout_url' );
function my_logout_url( $url ) {
$redirect = home_url();
return $url.'&redirect_to='.$redirect;
}
Dzięki!
function wp_loginout( $redirect="", $echo = true ) {
if ( ! is_user_logged_in() ) {
$link = '<a href="' . esc_url( wp_login_url( $redirect ) ) . '">' . __( 'Log in' ) . '</a>';
} else {
$link = '<a href="' . esc_url( wp_logout_url( $redirect ) ) . '">' . __( 'Log out' ) . '</a>';
}
if ( $echo ) {
/**
* Filters the HTML output for the Log In/Log Out link.
*
* @since 1.5.0
*
* @param string $link The HTML link content.
*/
echo apply_filters( 'loginout', $link );
} else {
/** This filter is documented in wp-includes/general-template.php */
return apply_filters( 'loginout', $link );
}
}
Wyświetla łącze, które umożliwia użytkownikom przejście do strony logowania w celu zalogowania się lub wylogowania w zależności od tego, czy są aktualnie zalogowani.
2
Bardzo ciekawym rozwiązaniem jest utworzenie strony „Wyloguj”, a następnie utworzenie jej szablonu w głównym folderze motywu według pliku page-{your-logout-slug}.php
. A oto najprostszy kod tej strony.
if ( is_user_logged_in() ) :
wp_logout();
wp_redirect(site_url());
else :
wp_redirect(site_url());
endif;
Dodaj argument do site_url()
dowolnego ślimaka lub pozostaw puste, aby zostać wylogowanym na stronie głównej. To dobrze, ponieważ używając dowolnego kodu php możesz zrobić wiele rzeczy, zanim zostaniesz wylogowany.
domyślny