Пример импорта поля типа symlink (ссылка на дерево) в UmiDump2.0

Материал из Umicms
Версия от 09:31, 23 июня 2013; Mad grant (обсуждение | вклад) (Новая страница: « category:API 1. Если вы импортируете страницы, то их типы должны быть указаны в xml в секции types, …»)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к:навигация, поиск

1. Если вы импортируете страницы, то их типы должны быть указаны в xml в секции types, если типы с такими идентификаторами для указанного пространства имен не были импортированы ранее. 2. Все связи (ссылки на дерево, выпадающие списки, иерархические зависимости) импортируются после того, как связываемые сущности будут уже созданы, т.е. они должны быть описаны в соответствующих секциях, если они не были импортированы ранее

В обоих случаях добавляем страницы в дефолтный домен и язык

1) Вариант, когда поле создается создается динамически без описания его в типе - http://api.docs.umi-cms.ru/razrabotka_nestandartnogo_funkcionala/format_umidump_20/osobennosti_importa/#object-allow-runtime [^]

Чтобы импорт дошел до этого поля, необходимо, чтобы было прописано его значения. Тем не менее в случае с симлинком само значение будет импортировано только при наличии секции relations

<?xml version="1.0" encoding="utf-8"?>
<umidump version="2.0" xmlns:xlink="http://www.w3.org/TR/xlink"> [^]
    <meta>
        <site-name><![CDATA[umicms.demo site]]></site-name>
        <source-name><![CDATA[umiDump20]]></source-name>
    </meta>
    <types>
        <type id="Идентификатор_типа_страницы" guid="catalog-object" title="Объект каталога" parent-id="{root-pages-type}" locked="locked"/>
    </types>
    <pages>
        <page id="135" parentId="0" link="/market/test/" is-active="1" type-id="Идентификатор_типа_страницы" alt-name="test">
            <basetype module="catalog" method="object">Объекты каталога</basetype>
            <name>test</name>
            <properties>
             <group name="recommend">
                <title>Рекомендуем</title>
                    <property id="389" name="recommend" type="symlink" allow-runtime-add="1">
                        <type name="Ссылка на дерево" data-type="symlink" multiple="multiple"/>
                        <title>Рекомендуем</title>
                        <value>
                            <page id="5" parentId="3" link="/market/hamsters/homyachok_smile/" is-active="1" object-id="398" type-id="120" alt-name="homyachok_smile">
                                <basetype module="catalog" method="object">Объекты каталога</basetype>
                                <name>Хомячок с улыбкой</name>
                            </page>
                        </value>
                    </property>
                </group>
            </properties>
            <template>inner.tpl</template>
        </page>
        <page id="5" parentId="0" link="/market/hamsters/homyachok_smile/" is-active="1" type-id="Идентификатор_типа_страницы" alt-name="homyachok_smile">
            <basetype module="catalog" method="object">Объекты каталога</basetype>
            <name>Хомячок с улыбкой</name>
            <template>inner.tpl</template>
        </page>
    </pages>
    <relations>
        <relation page-id="135" field-name="recommend">
            <page id="5"/>
        </relation>
    </relations>
</umidump>

2) Вариант, когда поле описывается в типе

<?xml version="1.0" encoding="utf-8"?>
<umidump version="2.0" xmlns:xlink="http://www.w3.org/TR/xlink"> [^]
    <meta>
        <site-name><![CDATA[umicms.demo site]]></site-name>
        <source-name><![CDATA[umiDump20]]></source-name>
    </meta>
    <types>
        <type id="Идентификатор_типа_страницы" guid="catalog-object" title="Объект каталога" parent-id="{root-pages-type}" locked="locked">
            <fieldgroups>
                <group name="recommend" title="Рекомендуем" visible="visible" active="active">
                    <field name="recommend" title="Рекомендуем" visible="visible">
                        <type name="Ссылка на дерево" data-type="symlink" multiple="multiple"/>
                    </field>
                </group>
            </fieldgroups>
        </type>
    </types>
    <pages>
        <page id="1350" parentId="0" link="/market/test/" is-active="1" type-id="Идентификатор_типа_страницы" alt-name="test">
            <basetype module="catalog" method="object">Объекты каталога</basetype>
            <name>test</name>
            <template>inner.tpl</template>
        </page>
        <page id="500" parentId="0" link="/market/hamsters/homyachok_smile/" is-active="1" type-id="Идентификатор_типа_страницы" alt-name="homyachok_smile">
            <basetype module="catalog" method="object">Объекты каталога</basetype>
            <name>Хомячок с улыбкой</name>
            <template>inner.tpl</template>
        </page>
    </pages>
    <relations>
        <relation page-id="1350" field-name="recommend">
            <page id="500"/>
        </relation>
    </relations>
</umidump>