<?
$doc="http://example.com/catalog.xml";
$res=simplexml_load_file($doc);
?>
Таким образом получаем массив $nodes, содержащий все корневые элементы каталога. Последующий доступ к ним до неприличия прост:
//доступ к 1-му элементу каталога (тэг class), и получение значения аттрибута 'name' его первого дочернего элемента (тэг art):
echo $res->class[0]->art[0]->attributes()->name;
То есть можно получить доступ к элементу любого уровня или его аттрибуту. Вывод осуществляется в формате SimpleXML, в конечном итоге представляющем формат String. Для указания надценки придется преобразовывать String в Double, а затем обратно в String для сохранения значения в TV MODx на конечной стадии работы парсера. Но - глаза боятся, руки делают!)) Итак - осталось сформировать цикл для прохода по всем позициям каталога. Единственный момент... Придется учесть такой момент, что практически невозможно отследить удаленные позиции каталога. Так что придется придерживаться следующего алгоритма:
- Полное удаление каталога (скрипт)
- Сброс счетчика (скрипт)
- Обработка каталога (скрипт)
- Сортировка пунктов (вручную? - пока да...)
Комментариев нет:
Отправить комментарий