2017-02-02 3 views
1

В моем сайте Wordpress имеется около 3000 сообщений, которые были удалены недавно. Вместо того, чтобы показывать код ошибки 404, как мне показать код ошибки 410 для всех удаленных или не найденных сообщений и страниц?Wordpress change all 404 to 410 Код ошибки

+2

Возможно, это может вам помочь. https://wordpress.org/plugins/wp-410/ –

ответ

1

Вы можете использовать this plugin, который вам пригодится, или вы можете выполнить указанные шаги, чтобы достичь этого, не используя какой-либо плагин.

  1. Создать форму Page WordPress панели администратора, как Ошибка 410 (или с любым именем по вашему выбору)
  2. Написать содержание в этой странице, которую вы хотите, чтобы показать пользователю.
  3. После публикации этой страницы вы можете получить ИД страницы по адресу
  4. Добавить данный код в активную тему 404.php.

404.php Код для

$custom_410_page_ID = 25;//Error 410 page ID 
header($_SERVER["SERVER_PROTOCOL"] . " 410 Gone"); 
header("Refresh: 0; url=" . get_permalink($custom_410_page_ID)); 
exit(); 

Теперь, когда какой-либо на посетить ваш старый URL или опечатки любой URL будет перенаправлен на Ошибка 410 страницу с 410 код состояния.

Ссылка: Move All 404 To 410

Надеется, что это помогает!

+0

Спасибо! Моя первая мысль была: могу ли я просто заменить код в 404.php кодом ошибки 410? Я оставляю имя файла 404.php и заменяю его содержимое кодом ошибки 410, это сработает? 1. Должен ли я помещать код, который вы указали в каком-то php-коде в файле 404.php 2. URL-адрес моего файла 410.php - domain.com/410.php, откуда я знаю его постоянную ссылку? 3. Каким будет контент или код в 410.php? – twrld1

+0

Я обновил свой ответ. –

+0

Это сработало, спасибо вам большое! – twrld1

2

Вам не нужно создавать страницу. просто добавьте этот код перед get_header(); в вас 404.php template

header($_SERVER["SERVER_PROTOCOL"] . " 410 Gone"); 

Надеюсь, это поможет!

+0

это намного проще + должно быть правильным решением :) – Lukas