Карта сайта на Joomla CMS с помощью Xmap в виде sitemap.xml

Карта сайта на Joomla CMS с помощью Xmap в виде sitemap.xml
  • Nic.ru
  • Multihost
  • RU VDS

Итак, нам нужно создать карту сайта на Joomla сайте с помощью плагина Xmap и преобразовать ее к виду файла sitemap.xml в корне сайта, как того требуют поисковые системы.

Переадресация карты сайта Xmap на файл sitemap.xml

Откройте файл .htaccess, который находится в корневой директории вашего сайта, с помощью текстового редактора и добавьте следующие строки:

Из документации на официальном сайте:

RewriteCond %{REQUEST_URI} ^/sitemap.xml
RewriteRule .* /index.php?option=com_xmap&id=1&view=xml

Рабочий пример:

RewriteCond %{REQUEST_URI} ^/index.php?option=com_xmap&view=xml&id=1
RewriteRule .* ^/sitemap.xml

После этого вы сможете посетить карту сайта по ссылке:

http://[ваш_сайт]/sitemap.xml

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

# Для русскоязычной части сайта
RewriteCond %{REQUEST_URI} ^/sitemap-ru.xml
RewriteRule .* /index.php?option=com_xmap&id=1&view=xml&lang=ru
# Для англоязычной части сайта RewriteCond %{REQUEST_URI} ^/sitemap-en.xml
RewriteRule .* /index.php?option=com_xmap&id=1&view=xml&lang=en

Создание файла sitemap.xml на Джумла

Другой способ создания xml-файла карты сайта. Для этого в корневой директории вашего сайта создайте текстовый файл с именем sitemap.xml. В этот файл нужно добавить содержимое следующего вида:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="http://brain8torm.ru/index.php?option=com_xmap&amp;view=xml&amp;layout=xsl&amp;tmpl=component&amp;id=1&amp;filter_showtitle=&amp;filter_showexcluded="?>
<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

<url>
<loc>http://brain8torm.ru/</loc>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>

<url>
<loc>http://brain8torm.ru/blog/joomla/</loc>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>

<url>
<loc>http://brain8torm.ru/blog/joomla/karta-sajta-s-pomoshhyu-xmap-v-vide-sitemapxml.html</loc>
<lastmod>2012-10-30T16:10:03Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>

</urlset>

Файл такой структуры можно создавать путем периодического сохранения карты сайта, генерируемой компонентом Xmap в файл sitemap.xml. Это действие можно автоматизировать способом, подсмотренным на страницах блога Антона Язова. Для этого создадим файл sitemap.php в корне сайта:

<?php
// Карта сайта из Xmap
$xmap_url="http://[ваш_сайт]/index.php?option=com_xmap&view=xml&tmpl=component&id=1";
// Получаем содержимое этой страницы
$xml_code = file_get_contents($xmap_url);
// Записываем это содержимое в файл sitemap.xml
if (file_put_contents($_SERVER['DOCUMENT_ROOT'].'/sitemap.xml', $xml_code)) {
$xml_code = file_get_contents('/путь/к/папке/сайта/sitemap.xml');
$xml_code = str_replace ("</url>", "</url><br>", $xml_code);
echo "<p>sitemap.xml успешно обновлен!</p>\n";
} else echo "<p>Ошибка!</p>\n";
?>

Для обновления содержимого файла карты сайта sitemap.xml, периодически запускайте скрипт sitemap.php на выполнение. Как вариант - создать задание в Cron.

Альтернативный (более универсальный) способ

Одним из наиболее простых способов для создания карты сайта в виде sitemap.xml является создания файла sitemap.xml в корне вашего сайта с таким содержанием:

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
   <sitemap>
      <loc>http://[ваш_сайт]/index.php?option=com_xmap&amp;view=xml&amp;id=1</loc>
   </sitemap>
</sitemapindex>

Таким же образом можно использовать нескольких карт сайта, генерируемых компонентом Xmap, путем объединения в один файл sitemap.xml.

В заключении в файле robots.txt добавьте более дружелюбный URL карты сайта:

Sitemap: http://[ваш_сайт]/sitemap.xml

С Ув. Андрей Кудряшов!

Похожие статьи

  • http://joomla.vargas.co.cr

Комментарии (10)

  • forekko

    forekko

    13 Февраль 2014 at 08:02 | #

    Спасибо!
    Рабочий вариант всё-таки работает))
    А вод документированный завести не смог.

    ответ

    • BrainStorm

      BrainStorm

      04 Июнь 2014 at 15:52 | #

      Когда я пробовал у меня тоже не вышло сделать как в документации описано )

      ответ

  • Leonellka

    Leonellka

    20 Март 2014 at 20:30 | #

    Большое спасибо за статью! Работает!

    ответ

    • BrainStorm

      BrainStorm

      04 Июнь 2014 at 15:54 | #

      Вам спасибо за отзыв!

      ответ

  • Дмитрий

    Дмитрий

    11 Ноябрь 2014 at 23:54 | #

    Спасибо Вам ОГРОМНОЕ!
    Реально четко выложенна информация, без воды. И главное все работает. Я сегодня только узнал что нужна карта сайта и вуаля, она у меня есть и Google ее отлично пользует))
    Побольше бы таких обзоров!

    ответ

  • Артем

    Артем

    18 Февраль 2015 at 05:20 | #

    Здравствуйте,первый способ не заработал ошибка 404,попробывал последний вылезла такая ошибка
    This page contains the following errors:

    error on line 4 at column 65: EntityRef: expecting ';'
    Below is a rendering of the page up to the first error.

    ответ

    • BrainStorm

      BrainStorm

      11 Апрель 2015 at 21:25 | #

      Нужно посмотреть сайт

      ответ

  • Devol

    Devol

    18 Июнь 2015 at 06:46 | #

    Здравствуйте!
    Что-то не срабатывает вариант с Cron. Карта не генерируется в указанный файл sitemap.xml или что-то не так делаю. (

    ответ

    • BrainStorm

      BrainStorm

      20 Июнь 2015 at 15:05 | #

      Ну без конкретики с Вашей стороны - что и как делаете - особо ничего не скажешь.
      Но как вариант, могу предположить возможные проблемы:
      1. Правильно ли вы указываете путь к php и скрипту sitemap.php при создания задания для cron в панели управления сервером?
      2. Выставлены ли права на "выполнение" данного файла, а именно - sitemap.php?
      3. Правильно ли вы прописываете пути в самом файле sitemap.php?

      ответ

  • Алексей

    Алексей

    04 Сентябрь 2019 at 06:29 | #

    Лучше использовать универсальный способ создания карты сайта, на сайте частника Константина Гайдука есть инструкция.

    ответ

Оставить комментарий

Вы комментируете как Гость.
Комментарии блога
  • Игорь
    12. Май, 2022
    Здравствуйте. Вы не подскажите, как сделать сбор всех комментариев в одном...
  • KR. Laboratories
    26. Декабрь, 2021
    Спасибо за полезную статью! Еще можно посоветовать воспользоваться...
  • irmaseo.ru
    09. Октябрь, 2020
    Очень полезная информация, спасибо
  • yan
    yan
    27. Июнь, 2020
    на manjaro может кому пригодится

    /home/yan/snap/opera/79/.config/opera/File System/
  • вася
    вася
    21. Июнь, 2020
    благодарочка
  • Владимир
    Владимир
    13. Апрель, 2020
    А как быть с андроидом? На планшете памяти хватило только на этот...
  • Владимир
    Владимир
    01. Апрель, 2020
    Вообще не помогло. Atheros как отваливался, так и отваливается. Каждый раз...
  • Дмитрий
    Дмитрий
    24. Февраль, 2020
    Спасибо. Думал не найду. 5 часов времени. Драйвера раза четыре переустанавливал. А все так просто было.
  • Алексей
    Алексей
    04. Сентябрь, 2019
    Лучше использовать универсальный способ создания карты сайта, на сайте частника Константина Гайдука есть инструкция.
  • dfgdrfg
    dfgdrfg
    05. Апрель, 2019
    ну и дерьмо эта мега, это словами не передать какой шлак
Подпишись и ты!
Яндекс Виджет
Последняя работа

Услуги
Контакты
  • Тверская область
  • г. Вышний Волочек
  • ул. 9-го Января, д.21, кв. 107
  • info@brain8torm.ru
  • brainstorm@programist.ru
  • +7 (915) 734-3849
  • +7 (904) 350-9777