Здравствуйте, мастера.
Интересует вопрос по поводу создания автоматической карты сайта. Но немного в раздумиях по поводу того, какой будет алгоритм генерации карты сайта.
Была мысль создания карты на бд. Это при создании записей, например, статьи блога, чтобы автоматически отправляло в бд название ссылки для карты, со статусом 0. А потом уже кроном, чтобы проверялось, в каком поле - статус = 0, добавляет его в sitemap, и присваивает статут 1.
Но как, по мне, это неоправданный вариант. Так как это лишние пляски с бубном. И этот вариант прокатит в случае, если этот алгоритм внедрён с самого начала, чтобы потом не пришлось добавлять 100500 записей отдельно.
Читал, что есть вариант, чтобы парсить все ссылки моего сайта. И потом уже добавлять их в sitrmap. Но сложно представить, как это реализовать. Просто спарсить ссылки с одной страницы - это просто, но как потом заставить парсить ссылки дальше? Всё через file_get_contents()?
Вообщем, я на раздорожьи. И не знаю, как оно должно быть(
Подскажите пожалуйста, куда двигаться дальше. Пишу обычным процедурным стилем.
Буду очень благодарен за подсказку
Зависит от сайта. Но вообще вам то известны все разделы сайта и ссылки для них? Вот для каждого раздела сайта и их элементов и делаете ссылку в sitemap. И по крону раз в какое то время запускаете такой скрипт.
Вам нужна та карта сайта, которая для пользователей - или sitemap.xml, которая для поисковиков?
Первая должна бы строиться самой CMS, если у нее внутри не бардак.
Вторая делается элементарно скриптом Google Sitemap Gen по логам сервера.
Google Sitemap Gen - не то что нужно. Sitemap как раз помогает поисковикам лучше индексировать сайт т.е. в этом файле могут быть страницы которые поисковик не может найти на сайте или дойти до них. Нужно самому понимать что скармливать в sitemap.
Антон: посмотрите сначала, что это за скрипт. Он анализирует логи вашего сервера, а не гугловский индекс. Если у вас сколько-нибудь приличная посещаемость - пользователи ходят по страницам, и они попадают в лог.
Adamos: Пользователи приходят из того же поисковика и шастают по ссылкам. Средняя глубина просмотра примерно 3 страницы. Смысл sitemap в том что-бы указать все страницы до которых не сможет дойти поисковик или пользователь. Например хорошая старая статья о чем либо, она просто потеряется на 120 странице, а в sitemap она будет и поисковик ее проиндексирует.
Антон: вы упускаете из виду два момента.
Первый: есть не только живые пользователи, но и тупые боты поисковиков второго эшелона, переходящие по всем ссылкам, до которых дотянутся. Их переходы тоже попадают в логи.
Второй: этот скрипт имеет смысл запускать в cron еженедельно, собирая в sitemap все переходы за последнюю неделю.
Сочетание этих двух моментов дает совершенно полную карту сайта - если, конечно, у него вообще есть посетители. Проверено.