прямые пользователи с set_transient

я хочу перенаправлять пользователей каждые 12 часов на другую страницу
и хотите использовать заголовок (местоположение: URL) и set_transient
я использую эти коды

$transient = get_transient( 'name_my_transient' );
if ( empty( $transient ) ){
function redirect() {
$data = 'redirected';
return $data;
header('location: http://www.google.com');
}
add_action('wp_head', 'redirect');
set_transient('name_my_transient', $data, 60*60*12 );
}

если я удаляю return $ data, он всегда перенаправляет пользователей

2

Решение

Ваше отражение хорошее, но я думаю, что вы допустили некоторые ошибки в своей организации кода, попробуйте это:

<?php
// Call your function with a top priority
add_action( 'wp_head', 'redirect', 1 );

function redirect() {
// Get the transien
$transient = get_transient( 'name_my_transient' );

// If the data do not exist, set it and redirect user
if ( $transient === false ) {

// Set the transient for 12 hours
set_transient('name_my_transient', 'redirected', 12 * HOUR_IN_SECONDS );

// Redirect the user with wp_redirect
wp_redirect( 'http://www.google.com' ); exit;
}
}
?>
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]