status_header() — позволяет изменить код ответа сервера

При помощи php-функции @header() устанавливает заданный код ответа сервера на странице, на которой используется.

Важно знать только одну вещь — функцию следует применить до того, как начнет выводиться хоть какой-то HTML код, иначе она просто-напросто не будет работать.

status_header( $header )
$header
(целое число) код ответа сервера, например 400, 404, 301 и т.д.

Функция не возвращает никаких значений.

Пример использования

status_header( 404 );

А теперь обратите внимание на расположение функции. Конечно, это только пример, главное условие — до HTML.

status_header( 404 );
get_header();
...

Фильтр status_header

Непосредственно перед задействованием функции @header() применяется фильтр status_header.

Мой пример использования фильтра:

function true_status_header_filter_func( $status_header, $code, $description, $protocol ) {
    // $status_header - первоначальное значение функции
    // $code - код, например 301 или 404
    // $description - описание, например 'Moved Permanently' или 'Not Found'
    // $protocol - протокол, например HTTP/1.0
    return 'HTTP/1.0 400 Bad Request';
}
 
add_filter('status_header', 'true_status_header_filter_func', 10, 4);

Источник: misha.blog

Миша Рудрастых

Путешествует по миру и рассказывает всем о WordPress лично, у себя в блогах и на курсах в Санкт-Петербурге. Умеет просто объяснять сложные вещи, делает это красиво. Организовывает неплохие WordCamp's, но совсем не умеет слушать чужие доклады.

Добавить комментарий

%d такие блоггеры, как: