Веб-студия, создание сайтов, создание Интернет-магазинов
-
Рубрики
-
Календарь
Май 2012 Пн Вт Ср Чт Пт Сб Вс « Авг 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Архивы
- Август 2011 (6)
- Март 2011 (3)
- Февраль 2011 (3)
- Ноябрь 2010 (7)
- Октябрь 2010 (2)
- Сентябрь 2010 (7)
- Август 2010 (8)
- Июль 2010 (11)
- Июнь 2010 (9)
- Май 2010 (16)
- Апрель 2010 (48)
- Март 2010 (23)
- Февраль 2010 (14)
- Январь 2010 (14)
- Декабрь 2009 (9)
- Ноябрь 2009 (6)
- Октябрь 2009 (8)
- Сентябрь 2009 (13)
- Август 2009 (22)
- Июль 2009 (30)
- Июнь 2009 (46)
- Май 2009 (28)
- Апрель 2009 (14)
- Март 2009 (8)
- Февраль 2009 (11)
Новые комментарии
- Галина к записи С Днем сисадмина!
- Примеры скриптов « Эхо блогосферы к записи Разбор XML файла с помощью PHP
- Примеры скриптов « Эхо блогосферы к записи Разбор XML файла с помощью PHP
- admin к записи Сделать спойлер
- admin к записи Сделать спойлер
- Sveta к записи Сделать спойлер
- Sveta к записи Сделать спойлер
- Димыч к записи Простой скрипт для создания превью
Создание карты сайта: файл sitemap.xml
Для создания этого файла необходимо иметь список страниц, которые вы собираетесь отправить в Google для индексирования. Список этот представляет собой простой перечень линков на каждую страницу.
http://mysite.com/page1.html
http://mysite.com/page2.html
http://mysite.com/page3.html
http://mysite.com/page4.html
…………………………………….
http://mysite.com/page1000.html
Удобно хранить такой список в специальной таблице базы данных, в которой нужно создать 4 поля:
| loc | lastmod | changefreq | priority |
| http://mysite.com/page1.html | 2008-09-20 | always | 0.5 |
Подробнее о значениях lastmod, changefreq и priority читайте в этой статье.
Все, что нам нужно сделать – это вытащить этот список из таблицы и записать его в текстовый (xml) файл.
Скрипт, который создает файл sitemap.xml, может выглядеть примерно так:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | <?php
// Извлекаем данные из таблицы sitemap
$sql = mysql_query("select * from sitemap");
while($record = mysql_fetch_array($sql))
{
$data[$i]='<loc>http://'.$record['loc'].'</loc>
<lastmod>'.$record['lastmode'].'</lastmod>
<changefreq>'.$record['changefreq'].'</changefreq>
<priority>'.$record['priority'].'</priority>';
$i++;
}
// собираем воедино все записи
for($j=1; $j<$i+1; $j++)
if($data[$j])
$string = $string.'<url>'.$data[$j].'</url>';
// добавляем "шапку" и окончание xml-файла
$xml='<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
'.$string.'</urlset>';
$fp=fopen('sitemap.xml','a'); //открытие файла
flock($fp,LOCK_EX); //блокировка файла
ftruncate ($fp,0); //удаляем старое содержимое файла
fwrite($fp,$xml); //записываем в него новое содержимое
fflush($fp); //очищение файлового буфера и запись в файл
flock($fp,LOCK_UN); //снятие блокировки
fclose($fp); //закрытие файла
?> |
Согласно инструкции Google, файл sitemap.xml должен находиться в корневой директории сайта. Сам же скрипт вы можете поместить куда угодно, не забыв изменить в нем путь к файлу $fp = fopen(‘sitemap.xml’,'a’); .
Если этот скрипт связать с админкой (что я и сделал в CMS «Столица»), то его содержимое будет обновляться при каждом создании или редактировании страниц. И это очень удобно. Потому что рописав его единожды в Google, вы можете жить спокойно – поисковик будет регулярно информирован обо всех новых или измененных страницах вашего сайта
Пока нет комментариев.
Вы должны зайти чтобы оставить комментарийt.
Нет трэкбэков.
|
General Office Technologies 2010 © All Rights Reserved. Architecture and Web Design: Alexander Morgan |

