Fungsi WordPress is_user_logged_in tidak berfungsi dengan betul dalam siteurl dan wp_redirect. <p>Saya cuba mengubah suai site_URL dan wp_redirect menggunakan kod berikut: </p>
<pre class="brush:php;toolbar:false;"><?php
add_filter( 'url_tapak', 'url_tapak_awalan_saya', 10, 2 );
add_filter( 'wp_redirect', 'my_prefix_wp_redirect' );
function my_prefix_site_url( $url, $scheme ) {
return my_prefix_modify_url( $url, $scheme );
}
fungsi my_prefix_wp_redirect( $url ) {
return my_prefix_modify_url( $url, null );
}
fungsi my_prefix_modify_url( $url, $scheme = null ) {
$url_semasa = isset( $_SERVER['PHP_SELF'] ) ?
jika ( ! strpos( $current_url, 'wp-admin' ) && ! is_user_logged_in() ) {
kembali '/';
}
pulangkan $url;
}
</pra>
<p>Tetapi saya mengalami ralat berikut.
membalas semua(1)saya akan balas P粉253518620 2023-07-29 18:11:47
Saya tidak begitu faham apa tujuan sebenar kod ini, jika saya memahaminya dengan betul, saya fikir ia memecahkan beberapa perkara, tetapi untuk soalan literal anda: tulis sahaja fungsi anda sendiri. Fungsi
is_user_logged_in tidak rumit dalam versi lalai:
function is_user_logged_in() {
$user = wp_get_current_user();
return $user->exists();
}
Dan wp_get_current_user
juga boleh dipasang tetapi mudah:
function wp_get_current_user() {
return _wp_get_current_user();
}
Jadi anda hanya perlu menulis ini:
function custom_is_user_logged_in() {
return _wp_get_current_user()->exists();
} balas
0
Batal balas menerbitkan