04.04.2022 в 01:03 (ред.)

Как перенаправить 404 страницу на главную в WordPress

Разберем плюсы и минусы редиректа 404 страницы с ошибкой на главную WordPress, покажу решение с помощью плагина и PHP кода.

Вводные

На показатель отказов сайта в значительной степени влияет количество 404 ошибок. Это может произойти по разным причинам:

  • неправильные навигационные ссылки,
  • ссылки на контент, который был удален,
  • пользователь допустил опечатку при попытке зайти на страницу конкретную сайта.

И хотя некоторые ошибки 404 можно устранить, вебмастера должны отслеживать и бороться с теми, которые остаются.

С ними можно бороться двумя способами:

  1. создание привлекательных 404 страниц для улучшения пользовательского опыта;
  2. перенаправление пользователей обратно на главную страницу, чтобы они могли быстро найти то, что искали.

В этой статье мы рассмотрим второй подход. В частности, я постараюсь объяснить причины, по которым вы можете захотеть перенаправить свою страницу с 404 ошибкой на главную страницу в WordPress, а также методы, как это сделать. Обо всем этом ниже.

Плюсы и минусы редиректа 404 на главную

Страницы ошибок 404 в прошлом приносили мало пользы, поскольку они не указывали причину, по которой посетитель видит экран ошибки 404, и часто не содержали полезных ссылок, которые посетитель мог бы использовать для навигации по сайту. Поэтому посетители часто покидали сайт, увидев такие ошибки.

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

Как упоминалось выше, перенаправление (редирект) может помочь сохранить трафик на сайте, особенно если на вашем сайте много 404 ошибок. При перенаправлении посетителей важно предоставить им объяснение того, почему они были перенаправлены, и показать способ поиска нужного им контента. Наблюдение за ошибками сканирования в аккаунте Google Search Console поможет найти плохие страницы.

С другой стороны, перенаправление 404 страницы также имеет свои минусы. Если не предоставить необходимое объяснение, пользователи могут запутаться, почему они продолжают заходить на вашу главную страницу при поиске определенного контента, и в результате покинуть сайт. Более того, Google интерпретирует такие перенаправления как мягкие ошибки 404, что в конечном итоге может привести к потере рейтинга страницы. Кроме того, такие перенаправления не рекомендуется использовать на очень больших сайтах, так как количество запросов на перенаправление может значительно замедлить работу сайта.

Кратко, что в итоге

Внимание! Перенаправление страницы 404 на главную страницу можно рекомендовать только в качестве временной меры.

Более долгосрочное решение должно включать в себя исправление неработающих ссылок на вашем сайте, создание привлекательной и информативной страницы 404, регистрацию ошибок 404 и применение перенаправления для определенных URL-адресов, которые часто посещаются или неправильно набираются.

Редирект 404 на главную с помощью плагина

Разобравшись, почему и когда вам может понадобиться перенаправить 404 страницу на главную страницу, давайте рассмотрим, как это можно сделать. Сначала мы рассмотрим метод с использованием плагина, поскольку он предпочтителен для большинства пользователей WordPress. Этот метод в виде использования плагина не требует специфических знаний программирования.

Когда речь заходит о редиректах, то на выбор предлагается множество плагинов WordPress, как бесплатных, так и платных. Некоторые из них были созданы специально для перенаправления или как часть более широкого набора опций, включенных, например, в SEO-плагин типа Yoast. Здесь же я рассмотрю бесплатный плагин редиректа в WordPress, который немного менее известен, но идеально подходит для нашего случая – Redirect 404 error page to homepage or custom page.

Этот простой плагин с понятным английским названием был создан специально для добавления и мониторинга перенаправления ошибок 404. Он идеально подходит для пользователей WordPress, чья тема предлагает неинтересную страницу ошибки 404, которую невозможно изменить без использования пользовательского кода. Вместо этого, используя этот плагин, вы можете настроить правило перенаправления со страницы 404 на любую другую страницу сайта. Кроме того, вы получите доступ к журналу ошибок 404, чтобы вы могли должным образом отследить свои 404 ошибки и выяснить причины их возникновения. Итак, я ниже объясню, как вы можете использовать этот плагин.

После установки и активации плагина перейдите в раздел Redirect 404 > Settings (Настройки). Опции, наиболее важные для данной статьи, находятся в подразделе Redirect Settings (Настройки перенаправления).

Выберите главную страницу из выпадающего меню страниц, на которые вы хотите перенаправить, и выберите тип 301 редиректа (301 redirect). Затем, по желанию, вы можете включить логирование 404 ошибки, установив соответствующий флажок и задав соответствующую историю логов в днях. После этого нажмите кнопку Save (Сохранить) в правом верхнем углу экрана, чтобы сохранить выбранные параметры и применить перенаправление.

Затем вам следует проверить функциональность нового добавленного перенаправления, попытавшись получить доступ к ошибочно введенному URL на вашей странице. Вы должны быть перенаправлены на домашнюю страницу, а попытка будет показана в разделе Redirect 404 > 404 Log, если вы ранее включили регистрацию ошибок 404.

Редирект 404 на главную с помощью кода

Помимо использования плагина WordPress, вы можете перенаправить 404 ошибку на домашнюю страницу с помощью пользовательского кода. Само собой разумеется, этот метод больше подходит для продвинутых пользователей WordPress, поскольку он требует некоторого опыта программирования и общих знаний внутренностей WordPress.

Тем не менее, я постараюсь объяснить как можно подробнее про сниппет кода, который мы создадим для редиректа.

Приведенный ниже фрагмент кода должен быть добавлен через FTP либо в файл functions.php вашей дочерней темы, либо в соответствующий плагин для конкретного сайта. Я буду говорить про первый вариант. Если вы решите перенаправить 404 страницу на главную с помощью этого сниппета, то я советую все-таки подтянуть свои знания по FTP и сделать резервную копию вашего сайта в качестве меры предосторожности. Сделав и то, и другое, переходим к следующему пункту.

Сначала подключитесь к своему серверу, используя учетные данные FTP, и перейдите в корневой каталог WordPress.

Затем перейдите в каталог /wp-content/themes и найдите папку вашей дочерней темы. Щелкните, чтобы открыть ее, и найдите в ней файл functions.php. Щелкните файл правой кнопкой мыши и выберите в меню пункт View/Edit (Просмотр/редактирование).

После этого откройте файл в вашем любимом файловом редакторе и добавьте следующий код в конец файла:

if( ! function_exists('qode_redirect_404_page_to_homepage') ){
    function qode_redirect_404_page_to_homepage(){
        if( is_404() ) {
            wp_safe_redirect( home_url('/'), 301 );
            exit;
        }
    }
    add_action( 'template_redirect', 'qode_redirect_404_page_to_homepage' );
}

Я использую Sublime Text 3 и в нем выглядит это таким образом:

Затем сохраните сделанные изменения и загрузите файл обратно на сервер, перезаписав имеющийся там файл.

Давайте вкратце остановимся и немного разберемся в этом коде.

Код представляет собой пользовательскую функцию qode_redirect_404_page_to_homepage(). Она перенаправляет URL пользователя на главную страницу сайта с помощью функции wp_safe_redirect(). URL домашней страницы задается с помощью функции home_url(). Поскольку результатом этой функции является URL домашней страницы без косой черты, мы должны указать его в качестве параметра.

Таким образом, если вы хотите перенаправить URL на какую-то другую страницу сайта, вам придется использовать '/relative-path-to-the-page' в качестве параметра, заменив relative-path-to-the-page на ваш. Например, если вы хотите перенаправить на страницу About Us (your-website-url/about-us), используйте в качестве параметра '/about-us'.

Код статуса перенаправления, который мы использовали, – 301 (Moved Permanently), а перенаправление выполняется только в случае обращения к странице 404, т.е. недействительной или несуществующей на данном сайте странице. Чтобы сделать все это возможным, код подключен к хуку экшена template_redirect.

Это гарантирует, что вам не придется редактировать код файла 404.php напрямую, а можно поместить сниппет в файл functions.php дочерней темы или плагина для конкретного сайта, как уже говорилось ранее. Таким образом, вы сможете правильно отслеживать все свои изменения в коде и не беспокоиться о том, что они будут потеряны после обновления темы.

Таким образом, после добавления кода остается только протестировать функцию перенаправления, то есть попытаться зайти с вашей страницы на ошибочно введенный URL. Как только вы успешно перейдете на главную страницу – тестирование завершено.

Финальные мысли

Посетители часто склонны покидать определенный сайт, столкнувшись с 404 ошибкой. Вебмастерам всегда требовался способ борьбы с этими ошибками, чтобы избежать потери трафика и потенциальных клиентов. Перенаправление пользователя на домашнюю страницу после возникновения 404 ошибки – это лишь один из способов решения проблемы.

В этой статье мы рассмотрели два способа добавления такого перенаправления – с помощью плагина или простого фрагмента кода. Поскольку оба метода довольно просты в реализации, уверен, что вы смогли успешно перенаправить свою 404 страницу на главную, следуя этим рекомендациям. А поскольку мы обсудили плюсы и минусы этого метода работы с 404 ошибками, вы будете знать, стоит ли применять его на своем WordPress сайте.

PHP Wordpress

Подпишитесь на новости

Никакого спама, только новости и полезные материалы