301 редирект wp json

Критическая ошибка WordPress

Совсем недавно в статье «Как провести SEO самостоятельно» мы рассмотрели, как избавится от дублей страниц в WordPress. Из этой же статьи мы поняли, что дублирующиеся страницы и битые ссылки могут отрицательно отразится на поисковой оптимизации, а так же продвижении нашего ресурса.

Но не успели мы рассмотреть одно решение проблемы, как разработчики WordPress добавили новых дублей в связке с битыми ссылками. На этот раз дублирование связано с REST API.

Если посмотреть в вебмастере Яндекса. то можно заметить, что:

Но не стоит пугаться и впадать в панику. Это совсем не вирус, а внедрение разработчиками WordPress нового плагина для удобного доступа к данным Вашего сайта с помощью HTTP RESET API. Подробности Вы можете изучить на странице разработчика http://v2.wp-api.org/.

wp json

И если Вы откроите url http://ваш_сайт/wp-json то наверняка увидите нечто вроде

И так, что такое wp-json? Это не вирус. Это, прежде всего виртуальная директория для API REST для CMS WordPress версии 4.4 и выше. Но к сожалению все служебные папки и URL адреса не скрыты, что соответственно создает дубли. Конечно, они со временем удалятся поисковыми роботами, но это уже не хороший сигнал. Такое количество битых ссылок на сайте присутствовать не должно.

Я не хочу и не буду рассматривать полезность данной функции. может она 10% и помогает в доступе, мы же сразу перейдем к решению вопроса.

Запрещаем индексацию в robots.txt

Прежде всего Вам необходимо в файл robots.txt добавить запрет на индексацию ссылок с wp-json. Для этого добавьте в файл robots.txt строки:

Запрещаем вывод кода в functions.php

Для этого в файле functions.php вашей темы пропишите следующее:

// Отключаем сам REST API

// Отключаем фильтры REST API

remove_action( ‘xmlrpc_rsd_apis’, ‘rest_output_rsd’ );

remove_action( ‘wp_head’, ‘rest_output_link_wp_head’, 10, 0 );

remove_action( ‘template_redirect’, ‘rest_output_link_header’, 11, 0 );

remove_action( ‘auth_cookie_malformed’, ‘rest_cookie_collect_status’ );

remove_action( ‘auth_cookie_expired’, ‘rest_cookie_collect_status’ );

remove_action( ‘auth_cookie_bad_username’, ‘rest_cookie_collect_status’ );

remove_action( ‘auth_cookie_bad_hash’, ‘rest_cookie_collect_status’ );

remove_action( ‘auth_cookie_valid’, ‘rest_cookie_collect_status’ );

remove_filter( ‘rest_authentication_errors’, ‘rest_cookie_check_errors’, 100 );

// Отключаем события REST API

remove_action( ‘init’, ‘rest_api_init’ );

remove_action( ‘rest_api_init’, ‘rest_api_default_filters’, 10, 1 );

remove_action( ‘parse_request’, ‘rest_api_loaded’ );

// Отключаем Embeds связанные с REST API

remove_action( ‘rest_api_init’, ‘wp_oembed_register_route’ );

remove_filter( ‘rest_pre_serve_request’, ‘_oembed_rest_pre_serve_request’, 10, 4 );

Выполнив перечисленные выше действия, мы добилиcь лишь того что закрыли от индексации нежелательные ссылки и теперь вместо страшного и непонятного кода перейдя по ссылкам:

Вы можете наблюдать главную страницу сайта. Кроме того мы избавились от нежелательной ссылки на http://v2.wp-api.org/ в ответе сервера.

И все вроде в порядке, НО. Мы получили нежелательные дубли главной страницы сайта. Самое время поправить и этот нюанс.

Создаем 301 редирект

RedirectMatch 301 /wp-json http:// ваш_сайт.ру

RedirectMatch 301 /oembed http:// ваш_сайт.ру

RedirectMatch 301 /embed http:// ваш_сайт.ру

RedirectMatch 301 /1.0/ http:// ваш_сайт.ру

Естественно заменив ваш_сайт.ру на свой домен и радуемся жизни.

Теперь все запросы по нежелательным ссылкам будут переадресовываться через 301 редирект на главную страницу Вашего сайта. Это будет актуально особенно для тех, чьи сайты уже успели обзавестись в поисковой выдаче нежелательными ссылками с wp-json.

Через несколько обновлений базы дублирующие страницы будут удалены из поисковых баз.

Источник

Безопасность сайта wordpress

Угроза со стороны разработчиков wordpress. Внимание. В новой версии WordPress найдена критическая ошибка.
Совсем недавно все владельцы сайтов на движке wordpress обновили свои cms и вместе с этим обновлением пришла головная боль, которой мы все не ждали.

Задача каждого уважающего себя вебмастера или просто владельца сайта-это лидерство, позиции в поисковой выдаче, создание качественного и перспективного ресурса. И как обидно, если все эти старания могут пойти насмарку.

wp json

И так, что такое wp-json? Изучив внимательнейшим образом сее творение разработчиков wordpress смею Вас заверить что не стоит бить во все колокола и поднимать панику. Это не вирус. Это, прежде всего виртуальная директория для API REST для CMS WordPress версии 4.4 и выше.

Таким образом, разработчики wordpress внедряют в свое творение новый, плагин для удобного доступа к данным Вашего сайта с помощью HTTP RESET API. Подробности Вы можете изучить на странице разработчика http://v2.wp-api.org/.

Но мы не будем вдаваться в подробности и технические сложности данной инновации. Смущает другое. Почему разработчики wordpress не позаботились о закрытии служебных директорий и оставили их открытыми для поисковых систем? Как избавится от непонятных и не желательных ссылок в поисковой выдаче? А ведь многие сайты Яндекс уже успел проиндексировать!

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

Как избавиться и отключить wp-json и oembed в WordPress

И все вроде в порядке, НО. Мы получили нежелательные дубли главной страницы сайта. Самое время поправить и этот нюанс.

Теперь все запросы по нежелательным ссылкам будут переадресовываться через 301 редирект на главную страницу Вашего сайта. Это будет актуально особенно для тех, чьи сайты уже успели обзавестись в поисковой выдаче нежелательными ссылками с wp-json.

Читайте также:  заблокировался руль и замок зажигания хендай солярис что делать

Источник

Редирект 301 и 302 в WordPress с плагином и без

Вот так, как поступил я, делать нельзя. Это моя самая большая ошибка, которую я совершил и теперь об этом жалею. А надо было всего то, прежде чем удалять сайт, настроить редирект с блога на блог (с домена на домен). Хотя лучше было бы затратить время и сделать редирект с страницы на станицу (со старой статьи на перенесённую статью в этот блог), то есть, перенаправить посетителей со старого адреса на новый адрес. Так бы я не потерял своих посетителей.

Друзья, теперь вы можете не совершать ошибок, а просто настроить нужный вам редирект на своём сайте ВордПресс. Как? Смотрите ниже.

Как сделать редирект в WordPress

Редирект (redirect) – это автоматическое перенаправления браузером посетителя веб-ресурса на другой сайт. Перенаправление можно настроить, как для отдельных страниц, так и для всех страниц, разделов и так далее. Редиректы могут перенаправлять посетителей как на страницы того же сайта, так и на страницы другого сайта.

Зачем нужен редирект

Редиректы используются при смене домена или адреса сайта. Это позволяет поисковым роботам и посетителям находить содержимое используя старые адреса, и не терять при этом все внешние ссылки указывающие на старый домен. При смене формата постоянных ссылок (ЧПУ) в WordPress, смена движка CMS, переход сайта с http на протокол https, склейки домена с www и без. Редиректы так же используются для создания упрощенных или укороченных версий некоторых более длинных адресов сайта и т. д..

Какие бывают редиректы?

Существует два основных типа:

301 является наиболее популярным и используется для перенаправление навсегда. В результате этого процесса старый URL исчезает из выдачи, а новый индексируется поисковиками. Чаще всего SEOшники говорят именно об этом методе. Иногда сервис выдает браузеру ошибку 404 – это значит, что редирект не настроен.

Это перенаправление с одного на другой URL на короткий срок. Посетитель попадает на новую страницу, она не индексируется. Все параметры остаются на исходной страничке и никуда не переносятся. Применять этот вариант переадресации нужно с осторожностью. Он нужен, когда важно оставить предыдущую версию или ссылки, которые размещены.

Обратите внимание, что постоянный редирект 301 в будущем можно конечно изменить. Постоянный redirect запоминаются браузерами и ПС на более долгий срок, чем временные.

Чтобы склеить домен с www на без www. Для постоянного переноса используется код редиректа 301, для временного – 302 или 307. И не забывайте подставлять сои веб-ресурсы.

И наоборот без www с www:

Какой из вариантов выбрать? Посмотрите: какой вариант находиться в топе и для какого из вариантов больше страниц в индексе.

301 редирект с домена на домен

Переезд на новый домен учитывая пожелания 2-ух основных поисковых систем Яндекс и Google: постраничный 301 редирект со старого сайта на новый. При этом для файла robots.txt редирект не надо делать, а прописать в нем директиву Host на новый домен. Тогда код для настройки редиректа на старом сайте может иметь следующий вид (мне бы так раньше сделать):

А файл robots.txt для старого сайта:

Редирект 301 с HTTP на HTTPS

После подключения сертификата-ssl стоит добавить обязательную переадресацию с протокола http на безопасный https, для того, чтобы все ваши соединения были зашифрованы.

Редирект с одной страницы на другую:

Плагин редиректов WordPress

Всё таки пользователям движка ВордПресс повезло, что существуют модули которые облегчают нам жизнь. Прежде чем перейти к специальным плагинам обратите внимание на SEO плагин WordPress SEO Plugin — Rank Math. Если вы установили его или собираетесь в будущем устанавливать, то функция Redirections в нём присутствует.

Встроенный умный менеджер перенаправления Rank Math поможет вам создавать, управлять, удалять, включать или отключать перенаправления в любом масштабе.

Легко создавайте перенаправления (редирект), не возясь с утомительным кодом с SEO плагином Rank Math.

Плагин Redirection и его настройка

Управляйте 301 перенаправлением, отслеживайте ошибки 404 и улучшайте свой сайт. Создавайте и управляйте переадресацией быстро и легко, не требуя знаний Apache или Nginx. Если ваш WordPress поддерживает постоянные ссылки, вы можете использовать редирект для перенаправления любого URL-адреса.

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

301 Redirects для сайта WordPress

Быстро создавайте и управляйте переадресацией 301. Просто использовать и проверять перенаправления.

Идеальный плагин для создания нового сайта из старого сайта или изменения доменного имени и управления всеми перенаправлениями и неработающими URL-адресами.

Найдите ссылку на 301 редирект в главном меню настроек. Просто добавьте заголовок, раздел, старую ссылку и новую ссылку:

Плагин Redirect создает новую таблицу в базе данных WP под названием ts_redirects, в которой хранится вся ваша информация о перенаправлении.

Есть и другие модули. Например, Simple 301 Redirects, который является очень простым решением для переадресации на сайте WP.

Плагин Simple 301 Redirects

Simple 301 Redirects предоставляет простой способ перенаправления запросов на другую страницу вашего сайта или в другом месте в Интернете. Это особенно удобно, когда вы переносите сайт WordPress и не можете сохранить свою структуру URL. Установите редирект 301 со старых страниц на новые.

Читайте также:  работа в метро для мужчин без опыта в москве с обучением

Можно присмотреться к новому плагину Safe Redirect Manager, как альтернатива менеджеру Redirection.

Легко и безопасно управляйте перенаправлениями на вашем сайте WordPress.

Существует множество доступных плагинов перенаправления. Большинство из них хранят редиректы в таблице параметров или в пользовательских таблицах. Большинство из них предоставляют массу ненужных опций. Некоторые из них имеют серьезные последствия для производительности (ведение журнала ошибок 404). Safe Redirect Manager хранит редиректы как пользовательские типы записей. Это делает ваши данные портативными, а ваш сайт масштабируемым.

Safe Redirect Manager построен для обработки трафика корпоративного уровня и используется на крупных издательских сайтах. Плагин поставляется только с тем, что вам нужно, следуя мантре WordPress, решениям, а не опциям. Действия и фильтры делают плагин очень расширяемым.

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

Да, чуть не забыл. Бывает ситуация когда вы загружаете медиафайл (например, изображение или видео), WordPress не только сохраняет ваш медиафайл, но и создает URL для него. Страницы с этими URL почти пустые: на них есть только ваше медиа и, возможно, заголовок (если вы его добавили). По этой причине, если вы никогда не используете эти URL, лучше перенаправить их на сам медиа-объект.

Перенаправить URL вложений на файл вложения можно при помощи выше перечисленных менеджеров, а в Yoast SEO просто переключить кнопку Нет на Да:

Как долго нужно сохранять редиректы

Сотрудник Google Гэри Илш опубликовал в Twitter новый пост, в котором поделился актуальными рекомендациями о том, как долго нужно сохранять редиректы.

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

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

Используйте свои кабинеты веб-мастеров Google и Яндекс. Они покажут вам несуществующие страницы на вашем сайте, на которые ссылаются другие страницы.

Источник

Как отключить ссылку на виртуальную папку wp-json

…я давно в исходном коде страниц своего сайта обратил внимание на непонятную (для себя) ссылку и папку (виртуальную директорию) wp-json в Яшкином веб мастере. Сначала как-то тревожило, но дальше-больше, по мере изучения вопроса, опасность развеивалась: ибо более-менее прояснялись цели разработчиков этого программного обеспечения.

Разработчики же вывели новый API REST на внутреннюю сцену ядра WordPress. Зачем? Бес их знает! Однако понятно одно, это для них целесообразно в плане развития движка. Замечательно!

Спрашивается: целесообразно ли мне какое-то не совсем понятное ПО в кодах моих сайтов.

Об этом и потолкуем:

…весьма недвусмысленно наблюдается отношение создателей WP к своей cms-клиентуре: ясно, что они преследуют свои цели, мягко говоря, мало заботясь о пользователях wp. Это тоже, в общем — нормально! Иначе ни о каком развитии не может быть и речи.

Что же остаётся нам!? а нам необходимо как-то подстроиться в течение времени, под паровой ход корабля Вордпресс…

…касаемо же нашей проблемы, то она замечательным образом решается (пространно болтать о своих изысканиях относительно API json вряд ли нужно, ибо уже много и доступно пояснено коллегами, ссылки ниже) а посему приступим, и перейдём к разделу:

как отключить ссылку wp-json

Если вы заходили к себе в веб инструментарий Яндекса, то в проиндексированных страницах наблюдали нечто похожее: а именно, среди прочего ссылочного пути некоторых линков встречается вензель wp-json

Я показываю то, что было у меня в вебмастере: вот проиндексированная ссылка…

Так вот …если вы кликните там у себя подобную ссылку — вас перенесёт в довольно-таки странное окно браузера: откроется страничка сплошь уписанная строками кода…

Кстати сказать, этот самый код программного обеспечения API REST несёт в себе всю информацию сайта, которую в свою очередь легко считывают приложения — удалённо.

Однако, как говорится — вопрос пользы API для многих пользователей, остаётся открытым).

В общем вряд ли есть смысл любоваться этакой изысканностью программного письма…

Кому интересно, можете начать изучение json хотя бы с этого … или с этого …

Ещё вот — такая скринка «структуры» сайта (всё в том же вебмастере Яшки), правда, не очень качественная, но для наглядности сойдёт.

По картинке видно, сколько роботом яндекс обследовано json страничек, загружено/проиндексировано и процентная «доля страниц» в индексе.

…напоминаю всякий раз: заведите какой-то документ «запоминалку» всех совершаемых эксов с блогом. Копируйте редактируемые файлы. Пригодится!

Поверьте: так короче до профессионализма, ибо возможность переварки накопленных крупиц знаний в кашу маловероятна!

Кстати же, о файле функций, ниже будет очень полезная ссылка на статью, где научимся писать свой собственный плагин: в который правильнее перенести часть кода, направленного на регулировку параметров ядра WP — в шаблоне этот код не нужен! и пихать всё что ни поподя в functions.php не нужно!!

Читайте также:  много пальцев на руке к чему снится

После того как установите нижепоказанный) код и… сразу же, кликнув по ссылке в панели web мастера Яндекс — вас перебросит на главную страницу вашего же сайта, но не страничку с кодом, о которой говорилось выше…

Источник

Избавляемся от дублей страниц Wp-json и смайлов Emoji после обновления WordPress

Всем читателям seoslim.ru привет! В прошлой статье я рассказывал каким образом можно в одни клик избавиться от ошибок в коде WordPress, дублей страниц, защитить сайт от посягательств из вне и прочих недочетов, которыми страдает бесплатная CMS.

Так что кто не хочет ковыряться в кодах и прибегать к услугам фрилансеров самое время воспользоваться плагином Clearfy, пока цены адекватные.

Использовать универсальный модуль — это здорово, но у большинства вебмастеров, которые ведут свои проекты ни один год, до обновления Вордпресс 4.2 и 4.4 версий не испытывали с ним проблем, так как ранее все уже было настроено, оптимизировано, а коды почищены от мусора.

Но пару месяцев назад произошло несколько кардинальных обновлений CMS, принесшие кроме плюсов и ряд значимых минусов в виде дублей страниц Wp-json и дополнительной нагрузки на сайт поддержкой смайликов Emoji.

Так что давайте разбираться с какой целью разработчиками были добавлены данные элементы в движок и самое главное научимся отключать wp-json и emoji.

Зачем ввели новый REST API в WordPress, итог

Так получилось, что после обновления Вордпресс до версии 4.4 владельцы сайтов стали замечать увеличение загруженных страниц роботами в панели Яндекс Вебмастер.

Как видно на скрине выше структура сайта немного изменилась и появилась новая директория wp-json, а вместе с ней и поддиректории oembed, 1.0, embed.

Причиной тому явился новый интерфейс REST API под управлением, которого и работает CMS.

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

Вот только жаль, что идея не доведена до совершенства, так как никто не удосужился закрыть от поисковиков код служебных директорий.

Как итог дубли страниц wp-json стали постепенно появляться в выдаче ПС.

Введя в адресной строке браузера http://site.ru/wp-json, мы попадаем на точную копию главной страницы сайта или страницу с непонятным кодом.

Беда в том, что данная страница существует (не отдает 404 ошибку и не срабатывает редирект), поэтому велика вероятность, что роботы поисковиков ее проиндексируют.

Как убрать Wp-json, Oembed, Embed

Удаление строк этого кода из WordPress возможно с помощью внесения изменений в файл functions.php вашего шаблона.

А именно надо прописать специальные команды, которые уберут эту заразу, а при переходе на страницу http://site.ru/wp-json последняя будет отдавать 404 ошибку.

// Отключаем сам REST API add_filter(‘rest_enabled’, ‘__return_false’); // Отключаем фильтры REST API remove_action( ‘xmlrpc_rsd_apis’, ‘rest_output_rsd’ ); remove_action( ‘wp_head’, ‘rest_output_link_wp_head’, 10, 0 ); remove_action( ‘template_redirect’, ‘rest_output_link_header’, 11, 0 ); remove_action( ‘auth_cookie_malformed’, ‘rest_cookie_collect_status’ ); remove_action( ‘auth_cookie_expired’, ‘rest_cookie_collect_status’ ); remove_action( ‘auth_cookie_bad_username’, ‘rest_cookie_collect_status’ ); remove_action( ‘auth_cookie_bad_hash’, ‘rest_cookie_collect_status’ ); remove_action( ‘auth_cookie_valid’, ‘rest_cookie_collect_status’ ); remove_filter( ‘rest_authentication_errors’, ‘rest_cookie_check_errors’, 100 ); // Отключаем события REST API remove_action( ‘init’, ‘rest_api_init’ ); remove_action( ‘rest_api_init’, ‘rest_api_default_filters’, 10, 1 ); remove_action( ‘parse_request’, ‘rest_api_loaded’ ); // Отключаем Embeds связанные с REST API remove_action( ‘rest_api_init’, ‘wp_oembed_register_route’); remove_filter( ‘rest_pre_serve_request’, ‘_oembed_rest_pre_serve_request’, 10, 4 ); remove_action( ‘wp_head’, ‘wp_oembed_add_discovery_links’ );

Для того чтобы убедиться в правильности своих действий сделайте следующее:

Не знаю почему, но у меня на этом боге такой прием не до конца сработал, так как при переходе на https://seoslim.ru/wp-json почему то 404 ошибка не выдавалась, поэтому пришлось в файле дописать еще один код на 301 редирект.

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

Как убрать Emoji из WordPress (смайлы Эмодзи)

Второе нововведение в популярной CMS произошло немного раньше, чем наделавшие шумихи дубли wp-json.

С версии 4.2 WordPress поменял свои стандартные смайлики на Emoji, которые появились в Японии и прижились в социальных сетях VK, FC, OK, G+ и других.

И вроде бы ничего в этом плохого нет, но не меня одного смутил тот факт, как это реализовано в Вордпресс.

1. Почему разработчики не дали право выбора владельцам сайтов включать или нет данные смайлы.

2. Скрипт и стили подгружаются прямо в секции.

Чтобы проверить есть ли код на вашем проекте откройте исходный код любой страницы «Ctrl+U» и сделайте поиск по слову «emoji».

3. Так как новые картинки больших размеров 72х72px то на многих площадках могло измениться отображение комментариев.

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

// отключаем Emoji смайлики remove_action( ‘wp_head’, ‘print_emoji_detection_script’, 7 ); remove_action( ‘admin_print_scripts’, ‘print_emoji_detection_script’ ); remove_action( ‘wp_print_styles’, ‘print_emoji_styles’ ); remove_action( ‘admin_print_styles’, ‘print_emoji_styles’ ); remove_filter( ‘the_content_feed’, ‘wp_staticize_emoji’ ); remove_filter( ‘comment_text_rss’, ‘wp_staticize_emoji’ ); remove_filter( ‘wp_mail’, ‘wp_staticize_emoji_for_email’ );

Не забудьте сохранить все изменения и выполнить проверку все тем же поиском слова «emoji» в исходном коде.

Если его упоминаний нет, значит сделали все правильно.

На этом все, а вы уже решили проблемы CMS после обновления на своих проектах?

Источник

Образовательный портал