Файл sitemap сайта где взять wordpress
Ниже подробно рассмотрим как работает карта сайта WordPress. Понимание принципа работы, может упростить некоторые моменты при изменении существующей или создании своей Карты сайта.
ЧПУ правила для Карты сайта
Выше я упоминал что для Карты сайта создаются свои правила перезаписи, вот так выглядит код метода WP_Sitemaps::register_rewrites():
Из кода видно какие вообще параметры запроса могут быть на странице Карты сайта. Это:
Дополнительные поля (теги) для Карты сайта
Добавим все дополнительные поддерживаемые теги для Карт записей (постов).
Рассмотрим все подробнее
Протокол sitemaps поддерживает четыре атрибута для каждого элемента карты сайта (по умолчанию в WP используется только ). Остальные можно добавить через фильтры.
Вот что выводится по умолчанию в WordPress:
Вот что поддерживается протоколом:
Дата последнего изменения файла. Дата должна быть в формате W3C Datetime:
- YYYY - 1997
- YYYY-MM - 1997-07
- YYYY-MM-DD - 1997-07-16
- YYYY-MM-DDThh:mmTZD - 1997-07-16T19:20+01:00
- YYYY-MM-DDThh:mm:ssTZD - 1997-07-16T19:20:30+01:00
Обратите внимание, что этот тег независим от заголовка If-Modified-Since (304) , который может возвращать сервер, и поисковые системы могут использовать информацию из обоих источников по-разному.
Как часто страница может меняться. Это значение предоставляет общую информацию для поисковых систем. Поисковики могут игнорировать эту информацию и заходить на страницу чаще или реже. Возможные значения:
- always - используется для страниц, которые изменяются при каждом обращении к ним.
- hourly
- daily
- weekly
- monthly
- yearly
- never - используется для архивированных URL-адресов.
Важность этого URL по отношению к другим URL-адресам. Значение указывается от 0.0 до 1.0 . Это значение не влияет на то, как ваши страницы сравниваются со страницами на других сайтах — оно только позволяет поисковым системам узнать, какие страницы вы считаете наиболее важными. Стандартный приоритет равен 0.5 .
Обратите внимание, что приоритет, который вы назначаете странице, вряд ли повлияет на положение Ваших URL-адресов на страницах результатов поисковой системы. Поисковые системы могут использовать эту информацию при выборе между URL-адресами на одном и том же сайте, поэтому вы можете использовать этот тег, чтобы увеличить вероятность того, что ваши самые важные страницы будут присутствовать в поисковом индексе.
Также, обратите внимание, что присвоение высокого приоритета всем URL-адресам вряд ли что-то улучшит. Поскольку приоритет является относительным, он используется только для выбора ботом какую страницу посетить в первую очередь между URL-адресами на вашем сайте.
Все фильтры доп. XML тегов | |
---|---|
wp_sitemaps_posts_entry | Доп теги (поля) для URL Карт сайта записей (постов). |
wp_sitemaps_taxonomies_entry | Доп теги (поля) для URL Карт сайта таксономий. |
wp_sitemaps_users_entry | Доп теги (поля) для URL Карт сайта юзеров. |
wp_sitemaps_index_entry | Доп теги (поля) для URL главной страницы карты сайта. |
Что такое XML карта сайта
Чтобы дать определение и ответить на вопрос что такое xml карта, визуально покажу как она выглядит.
Как выглядит карта визуально
Поисковые роботы при наличии в WordPress xml sitemap идут туда и смотрят какие страницы были добавлены или изменены, а не начинают перебирать все записи блога подряд и брать в индекс все записи по новой.
Исключение отдельных url (url записи, рубрики, метки)
Элементы исключаются путем изменения параметров запроса WP_Query, WP_Term_Query через специальные хуки.
Заметка: Если после исключения отдельных элементов в карте сайта вообще не остается элементов для данного типа или провайдера, то тип или провайдер будет полностью исключен из карты сайта.
Удалим отдельные Записи из Карты сайта
Например посты с ID 12 и 24 не нужны нам в карте сайта (пусть они имеют метатег noindex ,
но в карте появляются), исключим их из Карты сайта.
Удалим Термины из Карты сайта
Например термины с ID 12 и 24 из таксономии cities имеют метатег noindex , исключим их из Карты сайта.
Удалим отдельных Юзеров из Карты сайта
Например нам не нужны юзеры с ID 12, 24.
Знакомство
Главная страница Карты Сайта WordPress находится по адресу /wp-sitemap.xml или /sitemap-xml (с редиректом). Она содержит ссылки на карты ссылок.
И уже каждая карта ссылок содержит ссылки на страницы сайта.
Что по умолчанию попадает в Карту сайта?
Только публичные типы постов или таксономий, а также страницы постов авторов. Публичный тип или нет определяется параметрами public и publicly_queryable при регистрации типа записи или таксономии.
Максимальное кол-во ссылок в Карте
Главная (index) страница может содержать максимум 50 000 карт (ссылок на карты). Это значение изменить нельзя, оно находится в приватном свойстве WP_Sitemaps_Index::$max_sitemaps.
Каждая карта ссылок может содержать максимум 2 000 ссылок на странице. Это значение меняется через хук wp_sitemaps_max_urls:
Изменение кол-ва макс. ссылок влияет на кол-во ссылок пагинации на главной странице Карты сайта. Например, если у нас всего 500 постов, то по умолчанию будет всего одна карта ссылок для всех постов. Но если мы изменим максимум на 100. То на индексной странице появится 5 ссылок на Карты постов.
Не работает Карта сайта WordPress, 501 ошибка?
XML Карта Сайта WP работает на основе PHP расширения SimpleXML. Если его нет у вас на сервере, то при переходе на страницу карты сайта вы получите 501 ошибку.
Ссылка на карту сайта в файле robots.txt
Пример правильного создания динамического файла robots.txt для WordPress смотрите по этой ссылке.
Добавление элементов в карту сайта
Чтобы добавить тип записи или таксономию в карту сайта WordPress, нужно сделать их публичными, для этого при регистрации нужно установить в true параметры public и publicly_queryable.
Чтобы добавить произвольные ссылки в карту сайта, нужно создать свой Провайдер.
Заметки
Удаление элементов Карты сайта
Из коробки в WP есть три провайдера (поставщика) карт сайтов для разных типов: записи, таксономии, пользователи:
- posts — WP_Sitemaps_Posts<>
- taxonomies — WP_Sitemaps_Taxonomies<>
- users — WP_Sitemaps_Users<>
Удалять можно как самого провайдера карт сайтов, так и отдельный тип (отдельную карту «внутри» провайдера) или вообще отдельный элемент типа (ссылку «внутри» карты). Рассмотрим на примере таксономий. Можно отключить провайдера «taxonomies» и тогда все таксономий исчезнут из карты сайта, можно отключить отдельную таксономию и оставить остальные таксономии, или можно исключить отдельную рубрику (элемент) таксономии из списка ссылок.
Заносим в Яндекс XML карту и удаляем ошибку “нет используемых роботом файлов sitemap”
Следующим шаг это нужно занести xml в webmaster yandex, чтобы удалить ошибку “нет используемых роботом файлов sitemap”, так она выглядит в панели.
Покажем поисковику Яндекса где взять документ.
- Переходим в кабинете вебмастера в раздел Индексирование > Sitemap
- Вводим в поле адрес карты
- Нажимаем Добавить
- Видим что url добавлен в обработку, если процесс пройдет хорошо, то на следующий день придет письмо с поздравлениями или с ошибкой
All in one SEO pack
Для включения в All in one SEO pack активируем соответствующий модуль. Переходим в меню AIOSP в раздел модули и активируем.
Модуль в AIOSP
Далее рекомендую сделать настройки, как на скриншоте, не включая таксономии, но если они нужны, то отмечаем.
Выключение таксономий
Смогли создать xml на WordPress с помощью SEO плагинов, но не советую, применяйте первый способ. Для большей наглядности процесса приложу авторское видео.
Как работают Стили
Если вы посмотрите на исходный код любой страницы карты, то вы не увидите там стилей, однако браузер отображает карту не как XML код.
Так происходит благодаря этой строке:
Она указывает на схему стилей. В этом файле (который генерируется налету) схематически объясняется браузеру как нужно отобразить текущий XML код. Например, текст «XML-карта сайта» можно найти на странице стилей.
Каждый вебмастер старается сделать сайт удобным и понятным для посетителя. Одной из таких возможностей это HTML карта WordPress сайта, которая упрощает навигацию.
По другому это оглавление или список, есть разделы, они же рубрики вордпресс, в них находятся записи, и отдельным разделом идут страницы. Вещь удобная и полезная, разберем как реализовать.
Может ли Google найти страницы без файла Sitemap?
Обычно, если сайт относительно небольшой, а страницы должным образом перелинкованы, то найти контент роботу Googlebot не составит труда.
Если же сайт попадает в одну из трёх категорий, приведённых выше, то использование файла Sitemap поможет Googlebot найти новый контент и покажет, где искать изолированные страницы.
Файл Sitemap (карта сайта) также может использоваться для приоритизации сканирования – чтобы указать, какие страницы следует сканировать в первую очередь, что полезно для крупных сайтов.
При этом Sitemap ничего не гарантирует. Другими словами, Google не всегда сканирует каждый URL, добавленный в этот файл.
Обратное тоже верно: если URL не добавлены в файл Sitemap, то это не гарантирует, что Google их не будет сканировать. Google способен находить страницы независимо от того, включены они в карту сайта или нет.
Отсутствие файла Sitemap ничем не грозит сайту
Если у сайта нет файла Sitemap, то ничего страшного в этом нет.
Если вы сомневаетесь, нужен ли сайту файл Sitemap, то чтобы не ошибиться, его можно создать на всякий случай. В большинстве случаев сайт от этого только выиграет.
Google рекомендует автоматически генерируемые файлы Sitemap
Что касается создания файла XML Sitemap, то Google рекомендует использовать автоматически генерируемые карты сайта вместо тех, которые нужно составлять вручную.
Есть CMS, которые создают файлы Sitemap автоматически. Также существуют WordPress-плагины которые позволяют выполнить эту задачу.
Что такое Sitemap?
Карта сайта для людей с шорткодом
Чтобы сделать HTML карту для людей можно воспользоваться шорткодами, выведем не через шаблоны, а с помощью функции. Даю универсальную конфигурацию, копируем и прописываем в файл function.php активной темы.
Теперь в любой записи WordPress вставляем данный shortcode, по аналогии как делали в начале статьи.
Смотрим что получилось, эффект аналогичный, так же требует редактирования файлов темы WordPress. Советую к прочтению статью создание sitemap xml для поисковиков полезная для SEO продвижения. Для лучшего понимания материала выведу собственное видео.
Чтобы не мучиться с данной задачей, советую плагин для HTML карты сайта в WordPress. Если думаете, что блог начнет тормозить, то ошибаетесь, действие инструмента будет направлено только на один документ, на других он себя никак не проявит.
Чтобы сайт индексировался поисковыми системами эффективнее, нужно сделать xml sitemap WordPress. Технология применяется давно и нравится поисковикам, когда такая карта сайта присутствует в файлах. В статье разберем как ее создать и правильно настроить.
Yoast SEO
В YoastSEO, достаточно сделать одну операцию, входим в раздел Общие > вкладка Возможности и перемещаем в положение ВКЛ переключатель.
Включение в Yoast
Мгновенно генератор создаст виртуальный документ и вы сможете зайти по адресу, который показывал ранее.
Как создать файлы Sitemap для сайта WordPress?
Создать карту блога или сайта на WordPress нам поможет плагин Google XML Sitemaps. Который генерирует XML файл улучшающей индексацию веб-ресурса поисковыми системами, обновляет его и так далее. Вам достаточно плагин установить, настроить его и можно о нём забыть. Установка Google XML Sitemaps стандартная.
Сервис my sitemap generator
Шустрый сервис mysitemapgenerator , заходим и вводим URL сайта. Предоставляет бесплатно обработать 1000 записей.
Онлайн сервис
Параметры оставлю по умолчанию, по желанию вводим e-mail, чтобы получить результат на почту. Скачиваем документ после окончания процесса.
Скачиваем готовую карту
Придет документ с непонятным названием, переименовываем его в надлежащий вид.
Переименовываем
Далее загружаем объект в корень сайта WordPress, там где папка wp-admin, использую программу FilaZilla.
Загрузка на сервер
После отправляем на проверку в Yandex Webmaster и ждем обработки. Существует аналог это онлайн генератор xml-sitemaps , принцип действий одинаковый. В итоге мы смогли создать в WordPress sitemap и загрузили ее в обход поисковика. Успехов!
Напомню : это список страниц вашего сайта/блога, который не видят ваши посетители, а хорошо видна только поисковым системам. XML файл Sitemap позволяет сообщить Google и Yandex о страницах вашего сайта, чтобы они гарантированно попали в индекс поисковых систем.
XML Sitemaps может помочь поисковикам определить местонахождение страниц сайта, блога, время их последнего обновления, частоту обновления и важность относительно других страниц веб-ресурса для того, чтобы поисковая машина смогла более разумно индексировать сайт.
Классы, Функции, Хуки
Для управления/изменения Карты сайта есть набор функций, классов и хуков. Ниже приведен список всех Функций, классов и хуков, которые связаны с Картой сайта WordPress.
Функции | |
---|---|
wp_sitemaps_get_server() | Получает текущий экземпляр сервера Sitemaps. |
wp_get_sitemap_providers() | Получает массив поставщиков карт сайта. |
wp_register_sitemap_provider() | Регистрирует нового поставщика карты сайта. |
wp_sitemaps_get_max_urls() | Возвращает максимальное количество URL-адресов для карты сайта. |
Классы | |
---|---|
WP_Sitemaps<> | Основной класс отвечает за настройку перезаписей и регистрацию всех поставщиков. |
WP_Sitemaps_Index<> | Создает главную страницу sitemap, на которой перечислены ссылки на все карты сайтов. |
WP_Sitemaps_Provider<> | Базовый класс для расширения поставщиков карт сайта. Также содержит общие функциональные возможности. |
WP_Sitemaps_Registry<> | Обрабатывает регистрацию поставщиков карт сайта. |
WP_Sitemaps_Renderer<> | Отвечает за рендеринг данных sitemap в XML в соответствии с протоколом sitemap. |
WP_Sitemaps_Stylesheet<> | Предоставляет таблицы стилей XSL для стилизации всех карт сайта. |
WP_Sitemaps_Posts<> | Провайдер. Создает карты сайтов для типа объекта записи и его подтипов (пользовательские типы записей). |
WP_Sitemaps_Taxonomies<> | Провайдер. Создает карты сайтов для типа объекта таксономия и его подтипов (пользовательские таксономии). |
WP_Sitemaps_Users<> | Провайдер. Создает карты сайтов для типа объекта пользователь . |
Общие хуки | |
---|---|
wp_sitemaps_enabled | Фильтрует, включены ли XML-карты сайтов или нет. |
wp_sitemaps_max_urls | Фильтрует максимальное количество URL-адресов, отображаемых на карте сайта. |
wp_sitemaps_init | Срабатывает при инициализации карт сайтов. |
wp_sitemaps_index_entry | Фильтрует запись sitemap для главной страницы. |
Хуки Поставщиков (Providers) | |
---|---|
wp_sitemaps_add_provider | Фильтрует поставщика sitemap перед его добавлением. |
wp_sitemaps_post_types | Фильтрует типы записей для включения в карты сайтов. |
wp_sitemaps_posts_entry | Фильтрует теги записи. |
wp_sitemaps_posts_show_on_front_entry | Фильтрует теги домашней страницы. |
wp_sitemaps_posts_query_args | Фильтрует параметры запроса WP_Query. |
wp_sitemaps_posts_pre_url_list | Фильтрует список URL-адресов до его создания (замыкание). |
wp_sitemaps_posts_pre_max_num_pages | Фильтрует макс. кол-во страниц страниц постов (замыкание). |
wp_sitemaps_taxonomies | Фильтрует список таксономий. |
wp_sitemaps_taxonomies_entry | Фильтрует теги элемента таксономии. |
wp_sitemaps_taxonomies_query_args | Фильтрует параметры запроса получения элементов таксономии. |
wp_sitemaps_taxonomies_pre_url_list | Фильтрует список URL таксономий до создания (замыкание). |
wp_sitemaps_taxonomies_pre_max_num_pages | Фильтрует макс. кол-во страниц таксономий (замыкание). |
wp_sitemaps_users_entry | Фильтрует теги пользователя. |
wp_sitemaps_users_query_args | Фильтры параметры запроса юзеров. |
wp_sitemaps_users_pre_url_list | Фильтрует список URL пользователей до создания (замыкание). |
wp_sitemaps_users_pre_max_num_pages | Фильтрует макс. кол-во страниц юзеров (замыкание). |
В каких случаях сайту нужен файл XML Sitemap
Согласно Google, файл Sitemap не является обязательным для сайтов, а использовать его следует, если ресурс попадает в одну из трёх категорий:
- Крупный сайт с большим количеством страниц
- Изолированные страницы на сайте
- Новый сайт или сайт, который часто обновляется
Настройка XML Sitemaps
После успешной установки и активации плагина, его нужно настроить. В разделе "Настройки" нажмите на XML-Sitemap :
Откроется страница: Генератор XML-карты сайта для WordPress, где вам нужно её настроить. На этой странице, в самом вверху, вы увидите ссылку на вашу карту:
Вы можете на неё нажать и посмотреть как она родная выглядит:
Важные настройки на нашем родном и могучем русском языке, поэтому вам не составит ни какого труда во всем разобраться. Какие настройки можно произвести? Разработчик плагина указывает что, значения по умолчанию подходят для большинства сайтов. Но всё же, каждый пользователь должен решить сам.
Указать какие категории исключить из карты, содержание карты сайта, приоритеты, частоту изменений и так далее. Примерно, вот так, должно быть:
Архивы, метки и страницы авторов включать в карту сайта не надо. Хотя я лично теги/метки в карте использую.
После всех настроек обязательно нажмите "Обновить параметры". Готово. Дальнейшее действие это - добавить файл Sitemap в веб-мастере поисковых систем, чтобы ускорить индексирование сайта ВорДпресс. А также прописать ссылку на карту в robots.txt.
Итак, какие именно страницы необходимо включить в карту? По соображениям SEO рекомендуется включать лишь те страницы, которые хотелось бы видеть в поиске.
Обратите внимание, друзья, функция XML Sitemaps есть в SEO плагинах All in One SEO Pack и Yoast SEO, Rank Math SEO, и других SEO модулях.
Плагин WP Sitemap Page
Разработка таких инструментов как карта сайта для людей не слишком популярное дело, поэтому большинство WordPress дополнений давно перестали обновляться и поддерживаться. Нашел одно решение – это WP Sitemap Page .
Устанавливается стандартно из панели или прямой загрузкой, обходится без api ключа активации. В меню WordPress появится новый пункт идем Настройки > WP Sitemap, откроется окно, отмечу три раздела:
Основные настройки
- Ставить ссылки в nofollow, ставим чекбокс. Если сайт большой, то такое обилие ссылок вызовет негативное влияние на поисковое продвижение
- Примеры использования значений. По умолчанию выводится название статьи, а в нем ссылка (можете посмотреть на пункт 3).
- Что будет содержаться в карте сайта: как будут выглядеть пункты, с какими значениями, по умолчанию как на скриншоте
- Есть настройка для исключения ненужных элементов, нужно узнать и ввести ID
Для примера я захочу вывести когда была написана статья, с помощью параметров, добавлю такую комбинацию к стандартной записи, было так:
Вставил значения, получилось:
Принцип понятен, теперь создаем запись и прописываем шорткод [wp_sitemap_page] .
Вставляем шорткод плагина WP Sitemap Page
Публикуем, либо через предварительный просмотр смотрим, что получилось.
Отображение
Все выводятся: название рубрик WordPress, посты и дата публикации. Внешний вид в этом дополнении для создания HTML карты настраивается вручную через CSS, потому что подобрать стиль трудно изначально. Все элементы размечены классами, изменить оформление просто.
Как альтернативу могу предложить Simple Site Map Page, не имеет настроек, указываем где выводить HTML map и он автоматом делает. Не удобно, потому что теряете возможность оперировать и изменять текст.
Не рекомендую устанавливать устаревший dagon design sitemap generator, он не обновлялся 5 лет.
Плагин Google XML Sitemaps ВордПресс
Один из лучших плагинов WP. Он будет предоставлять полную XML-карту сайта для поисковых систем. Его установили уже более 24 243 146 раз.
Используйте этот плагин, он значительно улучшит SEO. Он создаст специальную XML-карту сайта и поможет таким поисковым системам, как Google, Bing, Яндекс и Мейл ру лучше индексировать ваш веб - ресурс. С такой картой сайта сканерам намного проще увидеть полную структуру вашего сайта и извлечь ее более эффективно. Плагин поддерживает все виды страниц, сгенерированных WordPress, а также пользовательские URL.
Установите плагин обычным способом, используя функцию Плагины - Добавить новый. В поле поиска введите его название Google XML Sitemaps:
Отключение Провайдера целиком (всех таксономий, юзеров, типов постов)
Провайдер - это общее понятие, которое включает в себя все типы. Например
- провайдер типа записи включает все типы записей.
- провайдер таксономии включает все типы таксономий.
Если отключить провайдера целиком, из карты сайта будут удалены все типы, например если отключить провайдера таксономий, то все типа таксономий (рубрики, метки, архивы пользователей) будут исключены из карты сайта.
Как создать Sitemap с помощью YoastSEO и All in one SEO pack
Есть два классных инструмента это YoastSEO и All in One SEO Pack, оба умеют генерировать sitemap.
Где находится sitemap в WordPress
Почему такой путь, потому что в большинстве случаев доступ к папкам типа wp-content закрыты от индексации разными способами, например, через robots. Поэтому помещаем в каталог первого уровня, то есть сразу после урл домена.
Отключение Карты сайта WordPress
Если на сайте установлен плагин или код, который уже создает карту сайта и Карта сайта от WordPress уже не нужна, то её можно отключить. Для этого вставьте следующий код в functions.php темы, в код плагина или куда-либо еще (впрочем, скорее всего, ваш плагин это уже сделал).
Теперь, если перейти по адресу /wp-sitemap.xml вы увидите 404 страницу.
Заметка: такое отключение не удаляет правила перезаписи для карт сайта, так как они нужны чтобы отдавать нужные ответы при отключенной карте сайта. Подробнее здесь.
Обратите внимание, что карта сайта WordPress отключается автоматически, если в настройках «Чтение» есть галочка «Попросить поисковые системы не индексировать сайт».
Создаем автоматический sitemap для Яндекса и Google плагином
Правильным решением является Google XML sitemap Generator, не смотрите на название, он один создает на WordPress автоматическую и правильную sitemap для всех поисковых систем. Идем в панели в поиск по плагинам и ищем стандартным методом.
Google XML sitemap Generator
Устанавливаем и активируем, переходим в раздел настроек.
Отключение ненужных пунктов
В разделе Базовые настройки снимаем все галочки:
- Первые две будут отмечены, они оповещают поисковики о внесенных правках. Не стоит этого делать, лучше вручную присылать ссылки в кабинеты сервисов для вебмастеров
- Третья галочка будет говорить о том добавится новый Robots и сделает корректировку. Не рекомендую так делать, следуйте рекомендациям из статьи о правильном robots
- Отключаем include sitemap in HTML format. Сделает свою карту сайта HTML, но уже для других роботов, она не валидная и несет в себе опасность ошибки покрытия
Убираем приоритет
Спускаемся ниже и настраиваем остальные параметры.
- Отключаем автоматическое определения приоритета, не нужно ставить одни статьи выше других
- Если ресурс хорошо продвигается рубриками, то можно их включить, я убираю галочку
Внизу нажимаем на сохранить, и ссылка на адрес вашей карты сайта появиться вверху, после сохранения настроек.
Ссылка
На этом настройка закончена, и перейдем к другим методам создания XML на движке WordPress.
Как проверить Включена ли карта сайта
Чтобы узнать Включена ли карта сайта, используйте такую проверку:
Оптимизируем WP_Query внутри карт сайта
По-умолчанию для вывода постов всех типов, класс WP_Sitemaps_Posts<> использует WP_Query и в результат отдаёт массив с объектами постов, тогда как в любом сценарии нам хватит одного лишь ID поста. Если у вас очень большое количество постов какого-либо типа, то вы можете обнаружить долгую генерацию отдельных карт. Код ниже позволяет изменить WP_Query, заставив его отдавать массив только с ID, что улучшит скорость генерации страницы и снизит нагрузку.
Как настроить карту WordPress использую онлайн генератор
В случаях когда ресурс на WordPress сделан как статичный, то есть не изменяется. Есть смысл сделать sitemap с помощью онлайн генератора, и загрузить ее на сервер самостоятельно.
Плюс способа, что обходимся без плагина, минус – при добавлении новых страниц, файл придется перезаливать на сервер.
Карта сайта (XML Sitemap) Yoast SEO
В Yoast считают, что карты сайта XML полезны для каждого веб-ресурса. Каждому сайту / блогу требуется, чтобы Google, Яндекс и другие ПС могли легко находить самые важные страницы и знать, когда они в последний раз обновлялись. Вот почему эта функция включена в плагин Yoast SEO.
Как включить XML Sitemap в Yoast SEO? Включите файлы Sitemap XML, которые генерирует Yoast SEO:
Yoast SEO автоматически создает карту сайта в формате XML для вашего сайта. Нажмите SEO на боковой панели установки WordPress, а затем выберите вкладку Возможности. И включите XML-карта сайта. Затем вы можете посмотреть XML карту сайта ВордПресс нажав соответствующею ссылку.
Хотя Yoast SEO - это рекомендуемый большинством инструмент, который поможет вам создать Sitemap (карту сайта XML) для WordPress, это ни в коем случае не единственный вариант.
Карта сайта (Sitemap) в Rank Math
Включите функцию карты сайта Rank Math (в мастере настройки), которая помогает поисковым системам разумно сканировать содержимое вашего сайта.
Выберите конфигурацию Sitemap и выберите тип записей или страниц, которые вы хотите включить в карту сайта. Обратите внимание : можно включить ссылки на изображения из содержимого записи WordPress в карту сайта. Это помогает поисковым системам лучше индексировать ваши картинки.
Добавьте созданный файл Sitemap в Google Search Console, Яндекс Вебмастер и в другие ПС. А также, укажите ссылку на файл в robots.txt.
Обработка запроса
WP_Sitemaps — это главный класс, который отвечает за:
- Создание правил перезаписи (ЧПУ). См. WP_Sitemaps::register_rewrites().
- Обработку запросов:
- /wp-sitemap.xml или /wp-sitemap-posts-post-1.xml — страницы Карты.
- wp-sitemap-index.xsl или wp-sitemap.xsl — страницы стилей Карты.
Инициализируется этот класс функцией wp_sitemaps_get_server() в момент события init:
Функция инициализации WP_Sitemaps::init() выглядит так:
Как мы видим из кода, в момент инициализации создаются правила перезаписи (ЧПУ) и на событие template_redirect вешается метод WP_Sitemaps::render_sitemaps().
Далее, метод render_sitemaps(), проверяет параметры запроса и если это:
- Какая-либо страница Карты сайта (или стилей карты):
- Если карта отключена, то ставиться статус ответа 404.
- Если карта включена, то выводится контент страницы и работа PHP обрывается через exit; .
Выглядит это в коде так:
Если карта не отключена и мы посещаем любую другую страницу сайта (не карту), то все равно срабатывает регистрация провайдеров Карты, всегда срабатывает вот этот код из метода init() .
Зачем нужны хуки понятно, чтобы отредиректить на карту или если это запрос на robots.txt добавить туда ссылку на карту. Но вот зачем нужна регистранция провайдеров на каждой странице WP на фронте, мне что-то непонятно. Этот момент нужно знать, чтобы не выполнять никакой логики в момент регистрации своего провайдера!
Отключение таксономии (рубрики, метки)
Например в карте сайта нам не нужны метки (таксономия post_tag ).
Отключение типа записи (поста, страницы)
Например в карте сайта нам не нужен тип записи page .
Без плагинов через HTML шаблоны
Метод направлен для людей с более продвинутыми знаниями, и позволяет обойтись без плагинов. Находим файл, который отвечает за вывод страниц на сайте, по умолчанию это page.php откроем его в активной теме. Дам сразу два кода:
Теперь открываем для редактирования файл page.php (в моем случае), и в верх заношу первый HTML код, а перед выводом контента второй.
Куда помещать код
Не помещайте теги php друг в друга. Чтобы избежать поломок WordPress и отказа ресурса в работе делаем работу через FTP.
Не обновляем, а сохраняем его как новый с названием sitemap. Закачиваем обратно на сервер, там же где лежит page.
Загрузка на сервер
Создаем новую страницу, в правой колонке находим раздел Шаблоны, из выпадающего списка выбираем Sitemap.
Выбор шаблона
Перейдя на сайт с картой можно увидеть такую картину. Аналогичным методом можно сделать форму обратной связи.
Предварительный просмотр
Разделим процесс на этапы:
- Находим документ отвечающий за вывод
- Записываем один HTML код на самый верх, второй длинный в то место, где нужен вывод карты
- Сохраняем как новый с названием sitemap
- Загружаем на сервер в папку к родительскому файлу
- Создаем в WordPress новую страницу и задаем шаблон из списка
И в заключение
Основное преимущество XML карты сайта это - улучшенная возможность сканирования веб - ресурса. XML карта сайта помогает поисковым системам более эффективно индексировать контент вашего сайта.
С помощью карты сайта вы можете быть уверены, что Google, Яндекс и другие поисковые системы будут знать обо всем содержимом вашего веб-сайта, независимо от того, индексируют они его или нет.
После создания и настройки карты сайта добавьте файл Sitemap в Яндекс.Вебмастер, чтобы ускорить индексирование сайта. Зайдите Яндекс.Вебмастер - Индексирование - в разделе Файлы Sitemap введите ссылку на ваш файл Sitemap XML:
В Версии WordPress 5.5 была наконец-то добавлена поддержка карты сайта в ядро. Плагин Google XML Sitemaps и ему подобные больше не нужны.
- Знакомство
- Отключение Карты сайта WordPress
- Добавление элементов в карту сайта
- Удаление элементов Карты сайта
- Отключение Провайдера целиком (всех таксономий, юзеров, типов постов)
- Отключение типа записи (поста, страницы)
- Отключение таксономии (рубрики, метки)
- Исключение отдельных url (url записи, рубрики, метки)
- Как проверить Включена ли карта сайта
- Дополнительные поля (теги) для Карты сайта
- Классы, Функции, Хуки
- Заметки
- Оптимизируем WP_Query внутри карт сайта
Читайте также: