Поиск страниц с другого домена используя протокол usel или API — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
(Новая страница: «При использовании протокола [http://help-dev.umi-cms.ru/chapter.XSLTTemplates.usel.html USEL], XML-шаблон поиска корневы…»)
 
Строка 15: Строка 15:
  
 
При использовании API Umi.Cms, поиск страниц на другом домене можно произвести с использование протокола  
 
При использовании API Umi.Cms, поиск страниц на другом домене можно произвести с использование протокола  
[http://api.umi-cms.ru/selections.umiSelection.html umiSelection], сам код выборки будет примерно такой:
+
[http://api.docs.umi-cms.ru/razrabotka_nestandartnogo_funkcionala/proizvolnye_vyborki/selector/ Selector], сам код выборки будет примерно такой:
 
<source lang="php">
 
<source lang="php">
    $sel = new umiSelection;
+
$pages = new selector('pages');
    $sel->setDomainId(2); // указываем id домена
+
$pages->where('domain')->equals(false); // Искать во всех доменах
    $sel->addHierarchyFilter(0); // поиск от корня сайта
+
$pages->where('lang')->equals(false); // Искать во всех языковых версиях
    $result = umiSelectionsParser::runSelection($sel); //Массив id страниц
+
 
 +
foreach($pages as $page) {
 +
    echo "<a href='{$page->link}'>{$page->name}</a>\n";
 +
}
 +
 
 +
echo "Pages found: " . $pages->length;
 
</source>
 
</source>
  
 
Дополнительная информация по протоколу umiSelection: [http://api.umi-cms.ru/api_samples.selections.html Примеры использования]
 
Дополнительная информация по протоколу umiSelection: [http://api.umi-cms.ru/api_samples.selections.html Примеры использования]

Версия 09:00, 30 апреля 2014

При использовании протокола USEL, XML-шаблон поиска корневых страниц другого домена должен быть следующим:

<?xml version="1.0" encoding="utf-8"?>
<selection>
    <target result="pages">
        <domain>2</domain>
    </target>
    <option name="exclude-nested" value="1"/>
</selection>

где 2 - это id домена, а параметр exclude-nested отключает поиск вложенных страниц.


При использовании API Umi.Cms, поиск страниц на другом домене можно произвести с использование протокола Selector, сам код выборки будет примерно такой:

$pages = new selector('pages');
$pages->where('domain')->equals(false); // Искать во всех доменах
$pages->where('lang')->equals(false); // Искать во всех языковых версиях

foreach($pages as $page) {
    echo "<a href='{$page->link}'>{$page->name}</a>\n";
}

echo "Pages found: " . $pages->length;

Дополнительная информация по протоколу umiSelection: Примеры использования