Как сделать карту сайта для Wordpress в формате XML и HTML

Опубликовано: 02.09.2018

видео Как сделать карту сайта для Wordpress в формате XML и HTML

Как сделать HTML карту сайта (для людей) плагином

Карта сайта – что это такое? Для непосвященных открою маленькую тайну: карта сайта wordpress бывает двух видов – карта в формате XML (для того, чтобы поисковые системы быстрее индексировали сайт) и карта сайта в виде страницы со ссылками на страницы, записи, рубрики и архивы сайта.



Второй тип карты сайта предназначен для пользователей – чтобы можно было быстрее и более удобно искать нужную информацию, если сразу найти необходимое не получилось. Сегодня я расскажу о том, что такое вордпресс карта сайта в формате XML, и покажу пример карты в HTML формате. HTML карту можно построить при помощи плагина, а можно обойтись и без него, только на основе скрипта php.


Файл Sitemap.xml - создание карты сайта, проверка и ее директивы

Карта сайта в формате XML

Самый распространенный wordpress плагин карта сайта в формате XML – это плагин Google XML Sitemaps . О нем я писал в статье, ссылку на которую я только что дал. Коротко скажу – плагин автоматически формирует динамическую карту сайта и заливает ее в корень вашего сайта.

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

Это – небольшой фрагмент со страницы настроек плагина. Также карта сайта на wordpress очень хорошо организована в плагине All In One SEO Pack, о котором я писал в статье Настройки обновленного seo плагина All in One SEO Pack . Здесь есть один нюанс – если вы пользуетесь этим seo-плагином, то плагин Google XML Sitemaps вам устанавливать совершенно не нужно, о чем вы и получите предупреждение при установке сразу двух модулей на сайт.

Этот wordpress плагин карта сайта выполняет не только функции формирования карты в формате XML, но карту он делает замечательно. Вот скриншот из настроек плагина с настройками карты:

Оба плагина не взаимозаменяемы, так как выполняют разные функции, но одна из них – как раз создание карты в формате XML. Ваша карта сайта google XML Sitemaps – более узкоспециализирована, но, так как этот плагин больше ничего не умеет делать, я советовал бы вам сразу устанавливать плагин All In One SEO Pack – так вы убьете не одного зайца.

Карта сайта в формате HTML

Самый распространенный плагин вордпресс карта сайта в формате HTML — Dagon Design Sitemap Generator. О нем я тоже подробно писал в статье Установка и настройка плагина Dagon Design Sitemap Generator , поэтому снова описывать его работу смысла нет. А вот как создать карту HTML без плагина – об этом я расскажу более подробно.

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

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

<?php /* Template Name: map.php */ ?>

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

Это будет база для новой страницы – в ней уже будет прописано все, что вам нужно для динамического формирования страницы – сайдбары, подвал, шапка сайта и основной контент (код которого нужно будет убрать, а вместо него вставить код карты сайта).

Только вместо основного контента вам нужно будет вставить код, который и будет формировать вашу карту сайта. Вот этот код:

<h1>Карта сайта</h1> <div class="box links margin_top"> <h3>Страницы</h3> <ul> <?php wp_list_pages('title_li=&depth=-1&exclude='.get_theme_mod('pagelist').','.$post->ID); ?> </ul> </div> <div class="box links margin"> <h3 class="margin_null">Записи</h3> <?php $cats = get_categories('orderby=name&hierarchical=0'); foreach ($cats as $category) { print '<div class="category_map">Категория <span><a href="'.get_category_link($category->cat_ID).'" title="Посмотреть все записи в этой категории">'.$category->name.':</a></span></div>'; print '<ul class="list">'; query_posts(array('cat' => $category->cat_ID,'showposts'=>1000)); while (have_posts()) { the_post(); $showed_ids[] = get_the_ID(); ?> <li><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><?php the_title() ?></a></li> <?php } print '</ul>'; } ?>

Вот что у нас получилось:

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

Как я уже говорил, вам нужно убрать вывод основного контента. Это строка:

<?php the_content(); ?>

Вот вместо нее вам и нужно будет вставить код карты. А ниже – код стилей для вашей новой карты сайта. Вы можете изменить дизайн карты на свое усмотрение.

.box { width: 531px; height: auto; margin: 0 0 10px 0; padding : 15px 0 15px 15px; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; border : 1px solid #c7c7c8; overflow: hidden; clear: both; } .box ul { color: #666; margin: 0 0 10px 0; padding: 0; } .box li { float : left; list-style-position: outside; list-style-type: disc; } .box h3 { margin: 0 0 15px 0; padding: 0; }

Надеюсь, понятно, как устанавливается wp плагин карта сайта в формате XML и HTML. На этом все – удачного вам дня, с наступающим Новым Годом, здоровья и успехов в бизнесе! До встречи в следующих публикациях!

 

rss