Veröffentlichungsdatum: 09. Februar 2010
Änderungsdatum: 22. März 2021
liste dateien filter repository wrepository wlist auflistung filterset
Dieser Artikel beschreibt den Einsatz von Filtertechniken (filterset) bei Dateiauflistungen über Frameworkfunktionen (z.B. wRepository bzw. wList)
Die Beispielprojekte zu Weblication® führen in den Bereichen "Aktuelles" etc. anschaulich an, wie sie innerhalb Ihrer Präsenz Listen erstellen und nutzen können.
Nachfolgend erhalten Sie ein paar Beispiele, wie Sie Filtermöglichkeiten in Dateilisten nutzen können, die Sie z.B. direkt über ein PHP-Script aufrufen.
<?php
include($_SERVER['DOCUMENT_ROOT'].'/weblication/grid.php');
$query = array();
$query['dir'] = '/dev/dokumentationen/framework/funktionen';
//$query['dirRecursive'] = '/de/aktuelles/meldungen';
$query['orderBy'] = '/wd:modification/@time';
$query['orderDir'] = 'desc';
//$query['limit'] = 20;
$query['limitFrom'] = 0;
$query['limitTo'] = 3;
$query['filterset'] = array('type' => 'and');
$query['filterset'][] = array('wPath' => "/wd:extension/wd:object/@type" ,'operator' => '==', 'condition' => 'objectFrameworkFunction');
//print "<pre>";
//var_dump($query['filterset']);
//print "</pre>";
$result = wRepository::selectDocuments($query);
foreach($result as $document){
print '<div>'.$document.'</div>';
}
?>
<?php
include($_SERVER['DOCUMENT_ROOT'].'/weblication/grid.php');
$query = array();
$query['dir'] = '/dev/img';
$query['orderDir'] = 'desc';
$query['limit'] = 3;
$query['filterset'] = array('type' => 'and');
$query['filterset'][] = array("wPath" => "/wd:stat/@path", "operator" => "containsi", "condition" => "/devAssets/img/");
$query['filterset'][] = array("wPath" => "/wd:stat/@extension", "operator" => "containsi", "condition" => "png");
//print "<pre>";
//var_dump($query['filterset']);
//print "</pre>";
$result = wRepository::selectDocuments($query);
foreach($result as $document){
print '<div>'.$document.'</div>';
}
?>
<?php
include($_SERVER['DOCUMENT_ROOT'].'/weblication/grid.php');
$query = array();
//$query['dir'] = '/de';
$query['dirRecursive'] = '/de/aktuelles/meldungen';
$query['orderBy'] = '/wd:modification/@time';
$query['orderDir'] = 'desc';
//$query['limit'] = 20;
$query['limitFrom'] = 0;
$query['limitTo'] = 4;
$query['filterset'] = array('type' => 'and');
$query['filterset'][] = array('wPath' => "/wd:extension/wd:object[@type = 'news' or @type = 'start']" ,'operator' => '', 'condition' => '');
//print "<pre>";
//var_dump($query['filterset']);
//print "</pre>";
$result = wRepository::selectDocuments($query);
foreach($result as $document){
print '<div>'.$document.'</div>';
}
?>
<?php
include($_SERVER['DOCUMENT_ROOT'].'/weblication/grid.php');
$query = array();
$query['dir'] = '/de/aktuelles/meldungen';
//$query['dirRecursive'] = '/de';
$query['orderBy'] = '/wd:modification/@time';
$query['orderDir'] = 'desc';
//$query['limit'] = 20;
$query['limitFrom'] = 0;
$query['limitTo'] = 2;
$query['filterset'] = array('type' => 'or');
$query['filterset'][] = array('wPath' => "/wd:extension/wd:object/@type" ,'operator' => '==', 'condition' => 'news');
$query['filterset'][] = array('wPath' => "/wd:extension/wd:object/@type" ,'operator' => '==', 'condition' => 'start');
//print "<pre>";
//var_dump($query['filterset']);
//print "</pre>";
$result = wRepository::selectDocuments($query);
foreach($result as $document){
print '<div>'.$document.'</div>';
}
?>
<?php
include($_SERVER['DOCUMENT_ROOT'].'/weblication/grid.php');
$listParameters = array();
$listParameters['dir'] = '/de/aktuelles/meldungen';
//$listParameters['dirRecursive'] = '/de';
$listParameters['orderBy'] = '/wd:modification/@time';
$listParameters['orderDir'] = 'desc';
//$listParameters['limit'] = 20;
$listParameters['limitFrom'] = 0;
$listParameters['limitTo'] = 2;
$listParameters['filterset'] = array('type' => 'and');
$listParameters['filterset'][] = array("wPath" => "/wd:extension/wd:meta/wd:categories[wd:category/text() = '1177055149718']", "operator" => "", "condition" => "");
$template = '/de/wGlobal/layout/templates/lists/default.wFilelist.php';
print wList::createList($template, $listParameters);
//print "<pre>";
//var_dump($listParameters['filterset']);
//print "</pre>";
?>