La fonction WordPress is_user_logged_in ne fonctionne pas correctement dans siteurl et wp_redirect.
P粉358281574
P粉358281574 2023-07-29 00:18:33
0
1
347
<p>J'ai essayé de modifier site_URL et wp_redirect en utilisant le code suivant : </p> <pre class="brush:php;toolbar:false;"><?php add_filter( 'site_url', 'mon_prefix_site_url', 10, 2 ); add_filter( 'wp_redirect', 'my_prefix_wp_redirect' ); fonction my_prefix_site_url( $url, $scheme ) { return my_prefix_modify_url( $url, $scheme ); } fonction mon_prefix_wp_redirect( $url ) { return my_prefix_modify_url( $url, null ); } function my_prefix_modify_url( $url, $scheme = null ) { $current_url = isset( $_SERVER['PHP_SELF'] ) ? sanitize_text_field( wp_unslush( $_SERVER['PHP_SELF'] ) ) : ''; if ( ! strpos( $current_url, 'wp-admin' ) && ! is_user_logged_in() ) { retour '/'; } renvoyer $url ; } ≪/pré> <p>Mais j'ai rencontré l'erreur suivante.
P粉358281574
P粉358281574

répondre à tous(1)
P粉253518620

Je ne comprends pas vraiment quel est le but réel de ce code, si je le comprends bien, je pense qu'il casse certaines choses, mais à votre question littérale : écrivez simplement votre propre fonction. La fonction

is_user_logged_in n'est pas compliquée dans la version par défaut :

function is_user_logged_in() {
    $user = wp_get_current_user();

    return $user->exists();
}

Et wp_get_current_user est également enfichable mais simple :

function wp_get_current_user() {
    return _wp_get_current_user();
}

Donc, vous écririez simplement ceci :

function custom_is_user_logged_in() {
    return _wp_get_current_user()->exists();
} 
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal