Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/30: Рейтинг темы: голосов - 30, средняя оценка - 4.63
6 / 6 / 2
Регистрация: 04.04.2011
Сообщений: 53

Добавление новых ссылок в sitemap.xml

23.05.2011, 06:36. Показов 5691. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток!

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

XML
1
2
3
4
5
6
7
8
9
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
   <url>
      <loc>http://atottoro.ru/</loc>
      <lastmod>2011-05-21</lastmod>
      <changefreq>weekly</changefreq>
      <priority>0.8</priority>
   </url>
</urlset>
на каждый каталог/товар создавать отдельную карту-глупо...как тут быть?

Пардон, проблему решил "погрузившись глубже" в мануал,тему можно закрыть/удалить.
А для всех товарищей,кто столкнулся с проблемой:
http://www.sitemaps.org/ru/protocol.php#index

Добавлено через 3 часа 7 минут
Доброго всем времени суток!

В общем, получиться-получилось,но что-то ни как не получается до конца...

Есть sitemap.xml вида:

Code
1
2
3
4
5
6
7
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
   <url>
      <loc>http://example.com</loc>
      <changefreq>weekly</changefreq>
   </url>
</urlset>
Нужно вносить информацию о новых ссылках, при их добавлении, но что-то ни чего не получается, в часности с xmlns="http://www.sitemaps.org/schemas/sitemap/0.9", то есть, без нее я могу добавить запись с помощью скрипта:

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
     $dom = new DomDocument();
     $dom->load("sitemap.xml");
 
     $xpath = new DOMXPath ($dom);
     $parent = $xpath->query ('//urlset');
     $next = $xpath->query ('//urlset/url');
     $new_url = $dom->createElement ('url');
     $new_loc = $dom->createElement ('loc', 'http://atottoro.ru/index.php?cat='.$translist.'&amp;view=1');
     $new_lastmod = $dom->createElement ('lastmod', $lastmod);
     $new_change = $dom->createElement ('changefreq', 'weekly');
     $new_url->appendChild ($new_loc);
     $new_url->appendChild ($new_lastmod);
     $new_url->appendChild ($new_change);
     $parent->item(0)->insertBefore($new_url, $next->item(0));
 
     $dom->save("sitemap.xml");
но, как бы я не пытался втиснуть сюда эту строку, скрипт не работает или говорит что нет такой переменной, и я это прекрасно понимаю, но !как сделать иначе - ума не приложу...

Прошу помощи Гуру
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.05.2011, 06:36
Ответы с готовыми решениями:

Парсинг sitemap.xml массива ссылок
$file = 'http://site/sitemap.xml'; $xml = file_get_contents($file); $movies = new \SimpleXMLElement($xml, LIBXML_NOCDATA); ...

sitemap.xml - добавить ссылок
Доброго всем дня. У меня такой вопрос. Есть sitemap с несколькими сотнями ссылок сайта. Нужно добавить еще ссылок. 1. Во-первых какими...

sitemap.help, или как нормальные люди создают sitemap.xml
Всем привет! Поделитесь пожалуйста опытом создания sitemap.xml Встроенный в движок генератор, выдаёт не то, что надо, а...

4
 Аватар для andyarus
175 / 77 / 2
Регистрация: 19.04.2011
Сообщений: 322
23.05.2011, 10:17
если я тя правильно понял, то такой вариант
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
 
$url = "http://atottoro.ru/";
$lastmod = "2011-05-21";
$chfreg = "weekly";
$priority = "0.8";
 
$add="   <url>
      <loc>$url</loc>
      <lastmod>$lastmod</lastmod>
      <changefreq>$chfreg</changefreq>
      <priority>$priority</priority>
   </url>
";
 
$a = 'sitemap.xml';
if(@$b = file_get_contents($a)) {
$c = str_replace("</urlset>", $add.'</urlset>', $b);
file_put_contents($a, $c);
echo 'yahoo!';
} else
echo '.!.';
 
?>
1
6 / 6 / 2
Регистрация: 04.04.2011
Сообщений: 53
23.05.2011, 11:23  [ТС]
Может и правильно, только мне ссылки нужно добавлять в начало файла, а ни конец

Добавлено через 19 минут
тогда ваш код нужно немного подправить
0
 Аватар для __PION__
960 / 801 / 85
Регистрация: 21.07.2010
Сообщений: 3,522
23.05.2011, 11:29
Цитата Сообщение от SnakeGod Посмотреть сообщение
Может и правильно, только мне ссылки нужно добавлять в начало файла, а ни конец
SnakeGod, может те, просто вывод наоборот организовывать?? а записывай как есть.
весь вывод впихни в массив реверсни и на выход
0
 Аватар для andyarus
175 / 77 / 2
Регистрация: 19.04.2011
Сообщений: 322
23.05.2011, 14:24
тогда ваш код нужно немного подправить

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
 
$url = "http://atottoro.ru/";
$lastmod = "2011-05-21";
$chfreg = "weekly";
$priority = "0.8";
 
$add="<url>
      <loc>$url</loc>
      <lastmod>$lastmod</lastmod>
      <changefreq>$chfreg</changefreq>
      <priority>$priority</priority>
   </url>
";
 
$a = 'sitemap.xml';
if(@$b = file_get_contents($a)) {
$c = preg_replace("#<url>#", $add.'   <url>', $b, 1);
file_put_contents($a, $c);
echo 'yahoo!';
} else
echo '.!.';
 
?>
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.05.2011, 14:24
Помогаю со студенческими работами здесь

Добавление новых записей и новых полей
Есть одна проблемка: Делаю программку тут одну, в основе лежит БД(Access 2007). У меня есть главная форма, где пользователь может...

Sitemap.xml
Добрый день. Интересует такой момент. Допустим у меня на сайте есть контент, на который нет прямой ссылки, его можно увидеть только набрав...

Противоречие в sitemap.xml и
Всем доброго времени суток! Если я правильно понял, то файл sitemap.xml подсказывает пауку, что нужно индексировать, а &lt;meta...

XML sitemap сортировка
Доброго времени суток. В общем такой вопрос, создал я XMLsitemap для сайтика путем перебора всех страничек из базы данных. В дальнейшем...

ошибки в sitemap.xml
генерирую файл sitemap.xml , окончательный код получается такой &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt; &lt;urlset...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru