Я установил сайт WordPress и столкнулся с очень странной проблемой.Я настроил страницу входа для подписчиков, и если вход не выполнен, я хочу, чтобы страница перенаправляла обратно на мою пользовательскую страницу входа, а не на страницу wp-login.php.Чтобы обойти это, я добавил следующий код в wp-login.php.
// if ( $shake_error_codes && $wp_error->get_error_code() && //in_array( $wp_error->get_error_code(), $shake_error_codes ) )
// add_action( 'login_head', 'wp_shake_js', 12 );
//I have replaced the code on line 55 with the following
if ( $shake_error_codes && $wp_error->get_error_code() && in_array( $wp_error->get_error_code(), $shake_error_codes ) ){
header("Location: index.php/login?login_error=1"); exit;
}
Перенаправление вообще не работает, я также использовал функцию wp_redirect () вместо header () ивсе еще не перенаправляет.
Это не только страница wp-login, которая создает эту проблему, я также проверил перенаправления на других страницах.Например, на моей домашней странице шаблона home.php я добавил следующий код прямо вверху страницы для тестирования.
$location = 'http://www.google.com';
wp_redirect($location);
А также
$location = 'http://www.google.com';
header("Location: $location");
Я не могуПосмотрите, почему ни один из перенаправлений не будет работать, ошибок нет, поэтому перенаправления блокируются.Что может быть причиной этой проблемы, пожалуйста, помогите, спасибо
Просто обновление, я добавил следующий код в верхней части страницы
if(headers_sent()){echo "sent";}
Он печатает «отправлено» такзаголовки уже отправлены, глядя на это