Создание темы для WordPress. Страница ошибки 404
Доброго времени суток. Ну вот мы и подошли к завершающему этапу создания собственной темы для WordPress. Так в прошлой статье мы добавили к теме поддержку миниатюр для постов. А сегодня мы создадим страницу ошибки 404, страницу сообщения “Страница не найдена”. О преимуществах оригинальной и правильно составленной страницы ошибки 404 я говорить не буду, единственное, что напомню — грамотно сделанная страница 404 позволяет удержать пользователей на сайте. А это как Вы знаете хорошо сказывается на позициях Вашего ресурса в поисковиках. Так, что давайте приступим к созданию страницы 404.
Давайте уточним, что ошибка 404 возникает, когда пользователь вводит адрес, которого на данном сайте нет или переходит по адресу, которого не существует.
Файл 404.php
В WordPess за стрнаицу ошибки отвечает файл 404.php, который находиться в Вашей теме. Давайте создадим данный файл. И добавим в него следующий код:
<?php get_header() ?> <div id="content"> <div id="center"> По запросу ничего не найдено. </div> <?php get_sidebar() ?> <?php get_footer() ?>
Давайте перейдем на наш ресурс и откроем какой-нибудь пост:
Теперь введем адрес заведомо не существующего поста, например: http://myblog/?p=100 (в моем случае) и увидим:
Сработал наш шаблон 404 ошибки. Теперь Вы знаете, как добавить к собственной теме оригинальный вывод ошибки 404 (добавить картинку, вставить поиск по ресурсу).
Но при обработке ошибки 404 есть маленький нюанс. Давайте введем в адресе http://myblog/asdfg и увидим:
Стандартное окно ошибки 404 веб-сервера apache. Почему так произошло? В этом случае адреса http://myblog/asdfg на нашем ресурсе нет, поэтому apache обработал данный запрос раньше, чем WordPress. Что в таком случае делать?
Указание шаблона ошибки 404 серверу
Для того, чтобы указать apache какой файл необходимо открывать при возникновении ошибки 404. Необходимо создать файл .htaccess (если его не было) и добавить в него следующую строку:
ErrorDocument 404 /index.php?error=404
Сохраняем и переходим по ссылке http://myblog/asdfg (в моем случае):
И видим, что теперь отработал наш шаблон ошибки 404.
Ну вот и все.
В следующем посте мы рассмотрим небольшие доводки по теме создаваемой нами такие, как создание скриншота, описания и другие. Так, что не пропускайте выхода новых постов. Так же Вы можете вступить в группу по WEB-программированию в Вконтакте или подписаться на страницу WEB-программирования на facebook.
Для сервера типа Apache должен быть файл у папки с страницами сайта с названием «.htaccess» и содержанием файла хотя бы:
ErrorDocument 404 /?error=404
Не совсем так.
ErrorDocument 404 этим Вы указываете apache страницу, которую он должен отобразить, если будет возвращен код 404 при заданном адресе. В WordPress при указании любого адреса будет загружен обработчик и уже в соответствии с ним загружена необходимая страница, если же странице по заданному адресу нет, то обработчик загрузит файл 404.php (это зависит от настроек, в данном случае я рассматриваю настройки по умолчанию).