So nutzen Sie Filter innerhalb einer Liste

09. Feb 2010

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.

Beispiel

Beispiel: Ausgabe von 3 Dateien über Repository, die dem angegebenen Objekt-Typ entsprechen

Quelltext

<?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' => 'object.frameworkFunction'); 

//print "<pre>";
//var_dump($query['filterset']);
//print "</pre>";

$result wRepository::selectDocuments($query);

foreach(
$result as $document){
  print 
'<div>'.$document.'</div>';
}

?>

Ergebnis

/dev/dokumentationen/framework/funktionen/wUserCur-getGroupStandard.php
/dev/dokumentationen/framework/funktionen/wRequest-isLinkChecker.php
/dev/dokumentationen/framework/funktionen/wPageCur-getPath.php

Beispiel

Beispiel: Ausgabe von Bildern, die dem angegebenen Pfad und Dateiendung entsprechen

Quelltext

<?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>';
}

?>

Ergebnis

Beispiel

Beispiel: Ausgabe von 4 Dateien über Repository, die einem von beiden angegebenen Objekt-Typen entsprechen

Quelltext

<?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>';
}

?>

Beispiel

Beispiel: Ausgabe von 2 Dateien über Repository, die einem von beiden angegebenen Objekt-Typen entsprechen

Quelltext

<?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>';
}

?>

Beispiel

Beispiel: Ausgabe von 2 Dateien über die Listenfunktion, die der angegebenen Kategorie entsprechen

Quelltext

<?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>"; 

?>

Ähnliche Seiten

    Entwicklerbereich Weblication® CMS - © Scholl Communications AG