См. интсрукция по ruweb.
Как делать sitemap.xml налету?
23.01.2026 13:59 / Марат / Смотрели : 223 / xml |"Создание sitemap.xml налету.". "Как делать sitemap.xml налету?"
О создании sitemap.xml налету!
- О странице sitemap.xml налету.
- Что такое sitemap.xml налету?
Вариант №1 sitemap.xml налету?- Что делать с архивом!? Код вставляем прямо в файл! Здесь архив
Вариант №2 sitemap.xml налету?- Обязательно прочитать!
Вариант №3 sitemap.xml налету(массив)!Вариант №3 sitemap.xml налету(скармливаем)!
-
О странице sitemap.xml налету.
Пунктов стало больше, чем предполагалось, поэтому, здесь некоторое вступление!
Все пункты, кроме "Вариант №3 sitemap.xml налету" зависят от того, как вы сможете получить ссылки на все ваши страницы из базы данных!
В этих пунктах, описано о проблеме, с которой вы можете столкнуться, если у вас более "PHP 7.0.0", то все функции типа "mysql_query" не будут работать...
Я описал проблему в читать обязательно... там довольно понятно я все объяснил, не будду повторяться!
И тут мне подумалось, что можно данный код "sitemap.xml налету" сделать универсальным!
Т.е. создание массива ссылок отдать вам, т.е. вам нужно придумать, как получить этот самый массив, а уже потом из этого массива сделать собственно sitemap.xml налету!
Это и сделаем в пункте №3!
-
Что такое sitemap.xml налету?
-
Вариант №1 sitemap.xml налету.
-
Что делать с архивом!? Код вставляем прямо в файл!
Прежде чем скачивать архив внимательно прочитайте!
Проверено на PHP 5.4.45, как узнать версию php
Если у вас версия ниже PHP 7.0.0., то должно заработать без проблем...
В архиве код создания "sitemap.xml налету", чтобы он заработал нужно...
с самого начала по пунктам :У вас должно работать выполнение php в xml файлах.
Файл "sitemap.xml" очищаем полностью!
Код из архива вставляем в файл "sitemap.xml".
Вы должны понимать, что вот это такое(имя(name), пользователь(user), пароль(pass) базы данных) и ввести соответственно ваши данные:
$db_host='localhost';
$db_name='
example ';$db_user='
example ';$db_pass='
12345 ';В коде из архива, вместо "
primer " вставляем название вашей таблицы внутри базы данных.$result=mysql_query('SELECT * FROM `
primer `');Чтобы ваша таблица в базе данных имела ячейку в каждой строке, которая имела адрес "http", которая и соответствует этой строке...! Например вот такой :
https://jsphp.ru/sozdanie_sitemap_xml_naletu.html
Если адрес контента получается другим способом, то в ниже идущей пункте и приведенном примере строки кода, нужно прописать соответствующий механизм...
Если столбец называется не "
url ", то в коде из архива меняем "url " на ваше название столбца!<loc>'. $row['url'] .'</loc>
С ячейкой "
data " поступаем аналогично см. выше строку...<lastmod>'. $row['data'] .'</lastmod>
Смотрим результат sitemap.xml налету.
Уже выше вы могли видеть этот результат...
-
Вариант №2 sitemap.xml налету?
-
Обязательно прочитать!
Поскольку, они никак не могут успокоиться, и всегда им нужно придумывать новые версии, чтобы издеваться над вами..., то все те модули, что будут в архиве, на версиях выше PHP 7.0.0. не работают...
Разница в одной букве... Данные модули устарели начиная с версии PHP 5.5.0, и удалёны в PHP 7.0.0.
mysql_query() и mysqli _query(.
mysql_connect() и mysqli _connect().
mysql_select_db() и mysqli _select_db().
mysql_query() и mysqli _query().
mysql_fetch_array() и mysqli _fetch_array().
На момент публикации. Поскольку я прямо сейчас не могу проверить работоспособность кода "sitemap.xml налету", то будет 2 архива...
Архив для версий ниже "PHP 7.0.0.".
И архив для версий выше "PHP 7.0.0."
Для версий выше "PHP 7.0.0." отдельного кода и архива не будет!
Вы можете скачать архив, на свой страх и риск, версию протестированную на PHP 5.4.45,.
-
Вариант №3 sitemap.xml налету!Архив здесь.
Какая идея!? Я не могу продумать, как на вашем сайте и на всех других сайтах реализован вывод ссылок, поэтому...
Вы делаете этот массив ссылок, а уже потом, скармливаете моему скрипту...
И он уже самостоятельно выводит sitemap.xml налету!
Начнем! Как я выше уже написал... вам нужно сделать "массив" всех ваших страниц!
Берем вот этот код на странице... или подобный, который обойдет вашу базу в цикле...
Перед циклом создаем новый массив "
$main_array ", т.е. сверху вот это строки(выделено синим ... ), поместить новую:$main_array = array();
while ($row=mysql_fetch_array($result)) Далее.. вместо "
$echo .= "... вам нужно поместить новую переменную, ну например вот такую, как у меня(которая соберет все ссылки):$main_array[] = 'https://jsphp.ru/'. $row['url'];
Примерный код , который у вас должен получиться:https://jsphp.ru/example/xml/new/example_cyrcle.txtДалее : что у вас
должно получиться !?Ниже цикла используем print_r и тег "pre" вот так:
Специально сделал отдельную страницу с чистым кодом, который сделает то, что описано в вышедших пунктах 3 пунктах, т.е. это очень просто :echo('<pre>');
print_r($main_array );
echo('</pre>');
Реальный пример: https://jsphp.ru/example/xml/new/example_arr.php -
Вариант №3 sitemap.xml налету(скармливаем)!Теперь нужно скормить данный массив нашему скрипту:
Не буду повторять все, а лишь напомню. У вас есть два пути...:
Внутри файла xml вариант 1.
Либо eдиная точка входа - вариант 2.
Настоящий живой пример sitemap.xml налету!
Помещаю наш готовый код на страницу, ну например пусть будет : "example.xml":
https://jsphp.ru/example/xml/new/example.xmlСкачать данный вариант sitemap.xml!
Качаем отсюда.
Что делать со архивом и скриптом!?
Внутри архива 1 файл "example.xml".
Помещаем его туда.. куда!? Уже несколько раз сказано выше....
Вместо строки №2(и файла "include_code.php") помещаем ваш файл, в котором будет код, который показан здесь.
include __DIR__ . '/include_code.php';
Если все сделано правильно, то я уже показывал результат:
https://jsphp.ru/example/xml/new/example.xml
Я исключил промежуточные варианты создания "sitemap.xml", о которых рассказывал много раз вот здесь.
В какой-то момент подумал,зачем столько лишнего кода!
И... вообще, сейчас, иду по пути максимального упрощения кода настолько, насколько это возможно!
Живой пример sitemap.xml налету.
Смотрим на мою карту "sitemap.xml" - она создается налету!
Пример моя карта : sitemap.xml, которая создается налету...
Так что такое sitemap.xml налету.
Получаем любым способом все ссылки сайта.
В цикле создаем sitemap.xml.
И выводим её на экран!
Всё просто!
Самое прикольное в этом во всём, что тогда, когда я искал хоть какую-то информацию по этому поводу ничего не было найдено вразумительного!
И только потом, через несколько лет, я дошел вот до этого!
Пошагово разбираемся в первом варианте php создания sitemap.xml налету
Первый шагом вам нужно проверить...
Пример
Пример
Вам потребуется цикл, в котором из базы данных получаем ссылки на ваши страницы.
Поскольку их такое количество, что вам придется это узнать самостоятельно!
Код создания sitemap.xml налету.
Используем цикл вывода из базы данных, например вот такой.
Формируем карту sitemap.xml, абсолютно аналогично, как показано "здесь" - и смотри вообще теорию,но только в php коде... например вот так :
$data .= '<url>
<loc>' . $row['url'].'</loc>
<lastmod>'. $row['data'].'</lastmod>
<changefreq>weekly</changefreq>
<priority>1.0</priority>
</url>';
Выводим результат с помощью echo.
echo $data;
Смотрим, что у вас должно получиться.
Код из архива может не работать... по многим причинам!
Проверьте прежде всего, чтобы вот такой код работал... и выводил на экран результат...
Предположим, что... выполнение php в xml файлах невозможно... по разным причинам... что делать!?
Если у вас движок, то скорее всего у него есть eдиная точка входа:
Этот код надо найти, где идет распределение по типам страниц... ну что-то типа такого,пример схематичный... :
if( $АДРЕС_СТРАНИЦЫ == $ВАШ_ДОМЕН. '/sitemap.xml') include 'sitemap.php';
Ну и далее, скачанный архив помещаем в эту страницу "sitemap.php", ну или назовите как хотите...
Я не могу вам рассказать про движки, поскольку пользовался ими так давно и уже ничего не помню.
Марат
17.03.2026 14:29Последнние комментарии:
14.12.2025 :комменты вернулись!
Марат
17.03.2026 14:29
Марат
22.02.2026 17:34
Марат
10.01.2026 23:29
Марат
05.01.2026 19:49
Марат
04.01.2026 19:17