Плагин "Sitemap"

Старинная карта АнтарктидыХочу представить на суд общественности плагин Sitemap. Это переработанный модуль Sitemap-generator Дмитрия Гадеева (Дмитрий знает о плагине и дал добро на его публикацию).

Sitemaps — это XML-файл с информацией для поисковых систем (таких как Google, Yahoo, Ask.com, MSN, Яндекс) о страницах веб-сайта, которые подлежат индексации. Sitemaps может помочь поисковикам определить местонахождение страниц сайта, время их последнего обновления, частоту обновления и важность относительно других страниц сайта для того, чтобы поисковая машина смогла более разумно индексировать сайт.
Использование протокола Sitemaps не является гарантией того, что веб-страницы будут проиндексированы поисковыми системами, это всего лишь дополнительная подсказка для сканеров, которые смогут выполнить более тщательное сканирование Вашего сайта.


SVN-репозиторий subversion.assembla.com/svn/ls-sitemap
Страница проекта www.assembla.com/spaces/ls-sitemap


Инструкция по установке
  1. Есть несколько вариантов установки плагина:

    • Скачать архив плагина в каталоге LiveStreet и распаковать в директории plugins вашего сайта (в результате должен получиться путь /plugins/sitemap/)

    • В директории plugins вашего сайта выполнить команду
      svn export http://subversion.assembla.com/svn/ls-sitemap/trunk sitemap
    • Если ваш сайт лежит в отдельном svn репозитории, то можно добавить в свойство svn:externals для директории plugins строку
      sitemap http://subversion.assembla.com/svn/ls-sitemap/trunk
  2. После чего необходимо перейти на страницу example.com/admin/plugins (вместо example.com указывайте адрес своего сайта) и активировать плагин Sitemap
  3. Теперь sitemap должен быть доступен по адресу example.com/sitemap.xml
  4. Сообщить поисковым системам о sitemap можно вручную (Google Webmaster Tols, Yandex Вебмастер) или добавив в robots.txt конструкцию:
    Sitemap: http://example.com/sitemap.xml


О том почему сайтмап разбит на несколько файлов можно почитать в теме о модуле Sitemap-генаратор

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

PS. Если вы нашли баги или что-то изменили к лучшему, то пожалуйста сообщите о этих изменениях, а ещё лучше вступите в Team на assembla.com и сделайте commit в отдельный branch.

UPD. Плагин переработан с учетом изменений в LS v.0.4.1.
UPD2. Плагин обновлен до версии 0.2. Детали на livestreet.ru/blog/addons/5591.html

120 комментариев

avatar
Спасибо, работает исправно.
avatar
Долго мучился с неработоспособность плагина.
Дело оказалось, что в ActionPage.class.php код начинает с <?, и все, пока не поставил <?php ничего не работало=)
avatar
я читал ваш коммент в теме о модуле, но меня сбило с толку название ActionPage (подумал что вы писали о плагине Page и ошиблись темой).
короткий тег был в ActionSitemap.class.php. благодаря вам уже поправил. спасибо ;).

ps. вот за это я и люблю опенсорс :)
avatar
да ошибся, конечно, ActionSitemap.class.php
avatar
блин, вот спасибо!
avatar
подскажите, как можно добавить несколько своих ссылок в сайтмап? Страницы сделаны статикой т.е. не из движка LS.
avatar
проще всего в plugins/sitemap/templates/skin/default/actions/ActionSitemap/general.tpl добавить. а правильней будет сделать возможность добавлять их через сайт. ещё можно смотреть подключен ли плагин Page и дергать страницы с него. добавлю в туду :)
avatar
Я сделал просто еще отдельный sitemap.txt и вручную прописал туда URL в каждой строке. Добавил… всего 2 ссылки :) Яндекс съел.
avatar
И вам спасибо за плагин )
avatar
у меня при переходе по ссылке site.ru/sitemap.xml
отображается:
http://site.ru/sitemaps/general/sitemap_1.xml http://site.ru/sitemaps/blogs/sitemap_1.xml http://site.ru/sitemaps/topics/sitemap_1.xml http://site.ru/sitemaps/users/sitemap_1.xml
avatar
все верно
avatar
О том почему сайтмап разбит на несколько файлов можно почитать в теме о модуле Sitemap-генаратор
avatar
гугл индексирует 2 страницы из 500 и всё… больше не идёт
avatar
зависит от сайта. у меня 1120 проиндексировано из 1672 (в сайтмапе).
avatar
аналогичная проблема только с яшей. В гугле проиндексировано 504 страницы, а в яндекс-вебмастере только одна)) главная. В чем причина? подскажите
avatar
спасибо за модуль! яша и гугл съели сайтмэпы на ура!
avatar
возник вопрос о принципах работы и регенерации сайт мэпов!
как и при каких условиях происходит регенерация мэпок?
avatar
сайтмап блогов генерируется и кешируется на 8мь часов. при создании нового блога кеш очищается.
сайтмап топиков — 30 минут. обновляется при создании нового топика.
сайтмап пользователей — 1 час. обновляется при регистрации нового юзера.
avatar
совместим ли модуль с плагином aceBlogExtender — там есть чпу :) ??
avatar
вопрос скорее к avadim (как автору плагина aceBlogExtender) т.к. этот плагин платный и я его не покупал :)
avatar
Кстати плагин Sitemap, что был в разделе модули для версии LS 0.4 завелся и на версии 0.4.1, его можно вернуть на место ))
avatar
Еще бы инструкцию для тех кто в танке.
Я залил папку sitemap в /plugins/, выставил права 755 для папок и 644 для файлов. Активировал. Пытаюсь зайти по /sitemap.xml
Ошибка:
[ERROR:clasLoad] Sitemap
File not found: /var/www/site.ru/classes/modules/sitemap/Sitemap.class.php
Fatal error: Class 'PluginSitemap_ModuleSitemap' not found in /var/www/site.ru/engine/classes/Engine.class.php on line 164

Какого черта его понесло в classes ведь он должен использовать только свою папку в /plugins/
Скачивал из модулей для 0.4.1
avatar
без паники. была деза, что под 0.4.1 работает без изменений. на днях обновлюсь до 0.4.1 и обновлю плагин
avatar
Спасибо, терпеливо ждем =)
avatar
avatar
Fatal error: Class 'PluginSitemap_ModuleSitemap' not found in /home/public_html/engine/classes/Engine.class.php on line 164
avatar
Это в версии 0.4.1
avatar
да. сорри. исправлю
avatar
avatar
Спасибо, теперь все нормально.
avatar
Поставил, такая же хрень на 0.4.1:(
avatar
приношу свои извинения. поправлю.
avatar
avatar
статические страницы не попадают в генерируемые сайтмапы? такой функционал в дальнейшем не планируется?
avatar
пока вручную. в следующих версиях добавлю. сам уже с этим столкнулся.
avatar
Строка 1: Sitemap: http://сайт.ру/sitemap.xml 	Синтаксис не распознается
так говорит google
avatar
понятно
avatar
что делать, как поправить?
avatar
посмотреть что выводит сайт.ру/sitemap.xml
avatar
тут все нормально выводит…
сайт.ру/sitemaps/general/sitemap_1.xml сайт.ру/sitemaps/blogs/sitemap_1.xml сайт.ру/sitemaps/topics/sitemap_1.xml сайт.ру/sitemaps/users/sitemap_1.xml

но почему в службах яндекса и гугля… при проверке robots.txt где прописано «сайт.ру/sitemap.xml» выводит «Синтаксис не распознается»
avatar
Подскажите пожалуйста, в чем может быть проблема. Поставил LS 0.4.2 и данный плагин. При добавлении sitemap в google для вэбмастеров — выдается ошибка «Ошибка разбора
Мы не смогли прочитать ваш Sitemap. Возможно, он содержит нераспознаваемую для нас запись. Проверьте свой Sitemap перед тем, как передать его повторно.» Причем указывается строка, превосходящая по количеству строк файл sitemap. Ошибка выдается на все файлы. Посмотрите пожалуйста что может быть не так — krugozorvengrii.vacau.com/sitemaps/topics/sitemap_1.xml
avatar
вы вносили изменения в исходный код? я вижу отличия в urlset
krugozorvengrii.vacau.com/sitemaps/general/sitemap_1.xml
cookorama.net/sitemaps/general/sitemap_1.xml
avatar
Да, я внес изменение в ссылку на схему в начале файла + добавил частоту обновлений, так как надеялся что это поможет. Ошибки были изначально. Я могу обновить шаблон до Вашего изначального состояния.
avatar
плагин «как есть» долгое время работает у меня на Кукораме и у многих кто его скачал. нужно искать нераспознаваемую запись и разбираться. сообщите если найдете ошибку в плагине.
avatar
а как он работает с плагином микроблоги
avatar
пока никак. я «Микроблоги» ещё не покупал
avatar
подскажите а как это плагин интегрировать с плагином Плагин «Nice URL»?
avatar
для чего вы хотите их интегрировать?
avatar
Наверное для того, чтобы sitemap создавался на основании ЧПУ.
Просто в sitemap так и остаются ссылки вида sajt.ru/blog/1.html даже с активированным плагином NiceUrl.
avatar
понял. этот вопрос действительно очень актуален. надеюсь разработчики обратят внимание на наши просьбы.
avatar
в скором времени реализую поддержку «Nice Url»
avatar
Ждём!
avatar
avatar
avatar
новая версия плагина работает с NiceUrl livestreet.ru/blog/addons/5591.html
avatar
http://sait***/sitemaps/general/sitemap_1.xml    http://sait***/sitemaps/blogs/sitemap_1.xml    http://sait***/sitemaps/topics/sitemap_1.xml    http://sait***/sitemaps/users/sitemap_1.xml  


так и должно быть?
  • XmeJI
  • 0
avatar
Да
avatar
Когда обновление?
avatar
Полагаю, что плагин не работает с плагином NICE URL.
avatar
Если прочитать пару строчек выше, то можно полагать что ваше утверждение верно.
avatar
уже работает livestreet.ru/blog/addons/5591.html
avatar
Подскажите, а если добавляются топики, то в sitemap.xml они прописываются сами?
avatar
А какой бы был вообще смысл в плагине, если бы топики в карту не прописывались? :)
Разумеется да.
avatar
Спс
avatar
Появился ещё вопрос: Я не очень понимаю эти строки…

В директории plugins вашего сайта выполнить команду
svn export subversion.assembla.com/svn/ls-sitemap/tags/v0.2 sitemap

Что сделать нужно?
avatar
Люди, помогите…
avatar
что именно не понятно в фразе «Есть несколько вариантов установки плагина»?
avatar
Аааа… теперь дошло, что имелось ввиду. Но при активации файл не появляется… Поэтому я подумал что что-то не так делаю.
В чем может быть причина?
avatar
а файл не создается. ссылку на sitemap.xml обрабатывает движок LiveStreet
avatar
Раньше в индексе вебмастер.яндекс было 1300 страниц и в поиске 900. После сайтмапа стало 1300 и 150. Удалил плагин, все вернулось на круги своя. Почему плагин так подкашивает страницы в поиске?
avatar
Не с плагином связанно. Яндекс с последнее время регулярно колбасит, многие жалуются.

Закрывайте от робота дубли (хотя это уже не критично, на самом деле. ПС сами неплохо стали разбираться и выкидывать лишнее).
Пишите тексты для людей — Яндекс на это обратил свой огненный взор.
Повышайте уникальность ресурса.

Это все банальности, конечно, но у меня безо всякого шаманства индексация близка к 100%. Чистый СДЛ. С плагином sitemap.
avatar
Я обратил внимание на то, что плагин выводит не все страницы в сайтмэп. Проблема именно в этом, он выводит 150 страниц и все (проверил, лично пролез в каждый «chunk»)

Как только отключил плагин, Яша и Гугл снова все увидели! Вот в чем дело. У меня СДЛ со статьями ручными и сканом книг не выложенных в сеть (можете попинать меня :) но контент уникален)
avatar
Спросите у саппорта Яндекса в чем причина. Думаю плагин здесь ни при чем.
avatar
Ответ от саппорта:
Здравствуйте, Алексей!

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

Самое интересное что статьи весели на вордпресе (Народ с поисковиков шел)! Потом статьи перенесены на ls и установлена переадресация 301 на LS. И через месяц Яша обиделся! Сайт выкинул вообше из поиска.
avatar
Дело в плагине. Он вносит в карту всего 150 документов, вместо положенных 900. Роботам закрыта всякая чушня типа рсс и профилей юзеров в роботс тхт.
avatar
тогда просто скажите каких именно страниц недостаточно в карте
avatar
понял, попробую завтра найти.
avatar
Разобрался, реально плагин не при чем :) это все совпадение вызваное склуйкой доменов и пр. Просто было прям оч похоже на глюк плагина.

Сори за навет!
avatar
я рад :)
avatar
В директории plugins вашего сайта выполнить команду
-это как?
avatar
После выполнения комманды вываливается ошибка
Fatal error: Class 'PluginSocial_ModuleSocial_EntityUser' not found in /home/exay128/data/www/mozhga.net/engine/include/function.php(412): eval()'d code on line 1
avatar
up
avatar
выполнить команду из под linux (ubuntu) не получается

sitemap http://subversion.assembla.com/svn/ls-sitemap/trunk


Может другую надо команду?
avatar
В общем залил на сервер. Все получилось. Активировал плагин
Захожу по адресу retun.ru/sitemap.xml

а там ошибка


[ERROR:classLoad] PluginSitemap_ModuleSitemap
File not found: /home/r/retunru/retun/public_html/plugins/sitemap/classes/modules/sitemap/Sitemap.class.php

Fatal error: Class 'PluginSitemap_ModuleSitemap' not found in /home/r/retunru/retun/public_html/engine/classes/Engine.class.php on line 162


что делать? откуда ошибка, как исправить. В корне сайта файла sitemap.xml нету
avatar
привлекайте программиста. пусть разбирается
avatar
Я немного не понял, каким образом она обновляется?
avatar
Установлен плагин NiceURL

Ошибка:
Fatal error: Class 'PluginNiceurl_ModuleTopic_EntityTopic' not found in 
/var/www/web/data/www/thewebday.com/engine/include/function.php(412) : eval()'d code on line 1

Как сделать совместимость плагинов?
avatar
они в связке нормально работают. возможно кто-то третий мешает.
avatar
У меня других плагинов не установлено, кроме админ панели aceAdminPanel
Что в таком случае делать?
avatar
После чистки кеша проблема исправилась.
avatar
Пардон, если просмотрел ответ, но поисковикам все же подсовывать именно индексный файл, тоесть сайт.ком/sitemap.xml?
avatar
А без выполнения команды
svn export http://subversion.assembla.com/svn/ls-sitemap/trunk sitemap

совсем никак? Я например на win хостинге.
avatar
Есть несколько вариантов установки плагина:
avatar
Есть несколько вариантов установки плагина:
Не просветите?
avatar
все написано в заметке выше. сделайте поиск по этой фразе
avatar
Установил. Работает. Спасибо.
Только вопрос — зачем выполнять
svn export http://subversion.assembla.com/svn/ls-sitemap/trunk sitemap

Я залил в plugins sitemap. выполняю
svn export http://subversion.assembla.com/svn/ls-sitemap/trunk sitemap
. Получаю ответ:
svn: Destination directory exists; please remove the directory or use --force to overwrite
svn: 'sitemap' already exists

Если использовать force загружается версия 0.2.1 замещая 0.3.
avatar
просто скачайте плагин с каталога
avatar
Это я «затупил».
Действительно — согласно инструкции нужно выбрать один из вариантов установки. (или… или)
avatar
RapidSVN-0.12.0 не экспортирует. Лог
— Выполнить: Экспорт
Error: Ошибка во время выполнения операции: URL 'http://subversion.assembla.com/svn/ls-sitemap/trunk%20sitemap' doesn't exist
— в чем трабл то?
avatar
откуда мне знать
репо работает subversion.assembla.com/svn/ls-sitemap/trunk/
avatar
Подскажите пожалуйста как грамотно отключить генерации карты для пользователей :)
avatar
avatar
Добрый день.
Заметил, что не дружит плагин SiteMap v 0.3.0 и aceAdminPanel v.1.5.271.
При активации SiteMap видим такое:
Warning: Class 'PluginSimpletpl_ModuleTopic_EntityTopic' not found in /srv/www/infopoavto.ru/public_html/plugins/aceadminpanel/include/adm_helper.php on line 752

Сам плагин при этом не работает (файл sitemap.xml не создается).
Это как-то лечится?
avatar
Шаблон Симпл? Без админпанели работает?
avatar
Шаблон Симпл.
Отключил админ панель, активировал плагин — sitemap.xml создался.
Включил опять админ панель — все работает без ошибок.
Чудеса :)
avatar
Кеш сбрасывали?
avatar
страница для скачивания плагина выдает 404 ошибку
avatar
по этой ссылке livestreet.ru/addons/147/
avatar
по этой тоже 404
avatar
вот тут качаем livestreetcms.com/addons/view/17/download/
закидываем в папку www/plugins
в админке нажимаем активировать
avatar
поставил плагин версии 0.3, после активации по адресу сайт.ru/sitemap.xml выдаётся следующая ошибка:
This page contains the following errors:

error on line 1 at column 1: Document is empty
Below is a rendering of the page up to the first error.

Перепробовал все, что было выше написано, проблема не решилась. Подскажите в чём может быть дело?
версия LS 1.0.1
avatar
Тебе может быть и не нужно, а другие смогут найти ответ. Этот пост в поиске у меня вылез первым.

Такая же проблема у меня из-за того, что фтп-сервер (proftpd) добавляет в начало файла BOM (Byte Order Mark). Как отучить от этого фтп-сервер я пока не нашёл, но есть временная мера:

elegant-way-to-search-for-utf-8-files-with-bom

What about this one simple command which not just finds but clears nasty BOM? :)

find . -type f -exec sed '1s/^\xEF\xBB\xBF//' -i.bak {} \; -exec rm {}.bak \;

Выполнить команду в папке с сайтом на сервере.
avatar
Мелкая фича при создании закрытого блога sitemap не добавляет ссылку на блог, но когда мы редактируем этот блог и делаем его открытым sitemap игнорит блог и не добавляет его, хотя топики этого блога добавляются.
avatar
Сори проблему только что решил, нужно пересчитать топики и блог в разделе админ
avatar
Подскажите, как можно добавлять в sitemap страницы из форума LS Board? Было бы идеально, чтобы страницы добавлялись автоматически, как и топики. Если кто-то объяснит как это делать вручную, тоже буду благодарен.
avatar
как добавить site.ru/tag/все в sitemap? (для меня это действительно важно, сейчас)
спасибо
avatar
Кто то может помочь мне? У меня такое проблема. :(
avatar
svn export subversion.assembla.com/svn/ls-sitemap/tags/v0.2 sitemap

Не подскажете, как это сделать и в какой программе?
avatar
В директории plugins вашего сайта выполнить команду
svn export subversion.assembla.com/svn/ls-sitemap/tags/v0.2 sitemap


Не подскажете, как это сделать и в какой программе?
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.