судя по белой странице у вас ошибка в коде 404.php или еще что. посмотрите логи ошибок сервера.
ErrorDocument 404 /belgrupp.by/404.html
Пропишите абсолютный адрес или путь к файлу 404.html
от корня сайта.
-
Ответ изменён 8 лет, 3 месяца назад пользователем
SeVlad.
Спасибо за совет, как-то не подумал логи глянуть.
Было написано: PHP Fatal error: Call to undefined function get_header()
Снес из 404.PHP весь код и залил HTML, может и не правильно, но работает ровно.
А как можно было в 404.PHP подтянуть страницу 404.html ?
Писал: $HTML->SendFile(‘404.html’); Не отображается…
Пробовал прописывать: ErrorDocument 404 /(http://belgrupp.by/404.html)
не проходит…
А как можно было в 404.PHP подтянуть страницу 404.html ?
???
В 404.php вставьте «тело» 404.html.
Из хтацесса уберите ваши добавки.
https://codex.wordpress.org/Creating_an_Error_404_Page
В общем легче не становится…
Отдельно страницы теперь отображаются корректно:
http://belgrupp.by/wp-content/themes/west/404.php
http://belgrupp.by/404.html
Но при вводе заведомо несуществующих страниц, составленные страницы не подтягиваются…
что-то непонятно — почему у вас выдает ошибку:
PHP Fatal error: Call to undefined function get_header()
то? все содержимое 404.php можете тут привести в тегах code?
Но при вводе заведомо несуществующих страниц, составленные страницы не подтягиваются…
Не «не подтягиваются», а ошибки. http://codex.wordpress.org/%D0%A7%D0%90%D0%92%D0%9E/%D0%91%D0%B5%D0%BB%D1%8B%D0%B9_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD
Потому что http://belgrupp.by/wp-content/themes/west/404.php Вы сделали не пправильно. Вы убили ВСЁ. Я же говорил только про ТЕЛО.
В общем так.
1. Создайте дочернюю тему.
2. Если какие-то файлы темы правились — скопируйте их в дочку (кроме стилей и файла функций — см внимательнее документ выше)
3. Верните ВСЕ файлы темы на место.
4. скопируйте из родительской 404.php и в строках 10-29 замените на Ваш код из <boby>
ЗЫ. Хотя такая 404 — это плохо. Как минимуму сайдбар стоит оставить.
Да! При необходимости можно в дочке отредактировать header.php изменив шапку для 404 https://developer.wordpress.org/reference/functions/get_header/
Тоже и для футера можно.
Но если Вы хотите именно такую простую, то всё же лучше сделать через хтацесс.
А, да! Есть ещё плагины для создания 404. Но это ИМХО совсем лишнее.
-
Ответ изменён 8 лет, 3 месяца назад пользователем
SeVlad.
я думаю, что вам надо убрать директиву ErrorDocument 404 из .htaccess
404 ошибку должен обрабатывать wordpress, а не сервер.
поэтому у вас и ошибка PHP — потому что файл 404.php вызывается не движком, а сервером напрямую.
Модератор
Yui
(@fierevere)
永子
логика работы 404 при включеном ЧПУ не страдает от директивы ErrorDocument 404
index.php не станет передавать 404 на вебсервер, хотя на некоторых конфигурациях возможны ответы 404 от вебсервера напрямую для статических файлов jpg|jpeg|png|gif| итд
Итого: затрачено уйма времени, а результата нет.
Создана дочерняя тема west-chaild
Стандартная страница 404.php и не думает открываться, это с учетом, что я в ней вообще ничего не менял.
Все должно быть гораздо проще… Алгоритм типа: если есть запрашиваемая страница, то открыть; иначе открыть страницу 404.php
Все получилось, за 5 минут и пару кликов решены все вопросы.
Плагин для вордпресс: 404 Plugin for WordPress, Автор: Fakhri Alsadi
Алгоритм типа: если есть запрашиваемая страница, то открыть; иначе открыть страницу 404.php
В общем случае (на чистой установке) движок именно это и делает.