Важное отличие между полным получением данных через upage и частичным используя upage.page id.field name

Материал из Umicms
Версия от 04:37, 5 декабря 2011; VITL' (обсуждение | вклад) (Новая страница: «При использовании XSLT-шаблонизатора, вам часто приходится через протокол UPAGE получать данн…»)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к:навигация, поиск

При использовании XSLT-шаблонизатора, вам часто приходится через протокол UPAGE получать данные о странице в xml-формате. Обязательно, при выводе списка объектов каталога, не забывайте о наличии способа вызова, который позволяет получить значение только одного поля, а именно:

<xsl:variable name="photo_link" select="document(concat('upage://', $page_id, '.photo'))//value" />

Дополнительная информация находится в документации протокол UPage

Может возникнуть ситуация, что у объектов каталога, будет очень много полей с данными, 40-50 или больше, поэтому на построение полных xml данных, при вызове upage://47 , будет расходоваться очень много времени, оно может отличаться в 5-10 раз, начнут возникать вопросы, почему сайт работает не так быстро как хотелось бы. Суть проста, не надо получать огромный объем данных в xml-формате, из которого вы будете использовать лишь 2-3%, это важное условие для оптимизации сайта.

В случае высокопосещаемого сайта, необходимо использовать другой подход к получение данных, об этом написано в статье Кастомизация макроса catalog getObjectsList для ускорения формирования страницы