Eine Abfrage über den gesamten Mandanten.
Pos | Attribut | Typ | Erforderlich | Beschreibung |
---|---|---|---|---|
1 | query | array | Nein | Zusätzliche Abfrage-Parameter |
2 | param | array | Nein | Zusätzliche Parameter |
Eine Liste der möglichen Attribute für den Parameter query und param werden auf dieser Seite weiter unten erläutert.
Rückgabe
Alle internen Funktionen, die eine Suche nach Seiten im CMS darstellen, liefern als Rückgabewert immer ein Page_Iterator-Objekt zurück. Dieses kann anschließend über eine foreach-Schleife durchlaufen werden. Nähere Informationen zum Page_Iterator finden Sie hier.
query
Name | Beschreibung |
---|---|
where | Zusätzliche Datenbankabfragen z.B. auf den Typ oder ID der Seite. Beispiel: array("where" => "type = 'news/entry'") |
order | Sortierung der Ergebnisse. Mögliche Werte sind z.B. "name asc","title desc", "order_field DESC". Wurde kein Wert angegeben, wird die aktuell eingestellte Sortierung aus dem Adminbereich verwendet. |
fields | Kommaseparierte Liste der Spalten, die bei der Abfrage gespeichert werden sollen (z.B. "id,title,name"). Standardmäßig ist hier "*" für alle Werte gesetzt. Werden z.B. nur die IDs der Ergebnisse gebraucht, kann durch eine entsprechende Angabe ein Performance-Vorteil erreicht werden. |
param
Sofern nicht anders angegeben werden parameter mit dem Wert "1" aktiviert. Beispiel: array("no_navhide" => 1);
Name | Beschreibung |
---|---|
no_nav_hide | Seiten mit gesetztem Anzeige-Flag "Nicht in Navigation anzeigen" ausschließen. |
no_intranet | Seiten mit gesetztem Intranet-Flag "Seite nicht auf den Liveserver übertragen" ausschließen. |
intranet | Nur Seiten anzeigen, die das Intranet-Flag "Seite nicht auf den Liveserver übertragen" besitzen. |
search | Seiten mit gesetztem Suche-Flag "Seite von der Suche ausschließen" nicht berücksichtigen. |
fulltext | Eine Volltextsuchanfrage durchführen. Wird z.B. für die Suche benötigt. |
inactive | Sowohl aktive als auch inaktive Seiten suchen. |
deleted | Ist standardmäßig auf "0". Bei "1" werden auch gelöschte Seiten mit angezeigt. |
lang | Die gewünschte Sprache der Seiten (z.B. "de" für deutsch). Wird keine Sprache übergeben, was meist der Fall ist, dann wird die Sprache des $site Objekts verwendet. |
auth_or | Bei "1=1" werden keine Rechte berücksichtigt. D.h. es werden auch Seiten ausgegeben, auf welche der aktuell angemeldete Besucher keine Bearbeitungsrechte bzw. Ansichtsrechte hat. |
deleted_or | Bei "1=1" werden gelöschte und nicht gelöschte Seiten berücksichtigt. |
has_children | Bei den einzelnen Ergebnissen (Page-Objekten) speichern, ob jeweils Kinder verfügbar sein. Das Feld has_children ist null, wenn kein Kind existiert, ansonsten enthält es eine Zahl >0 |
Die Funktion getPages bildet eine basis-Funktion. Alle verfügbaren Auslesefunktionen wie getChildren oder getParents greifen tief im System auf die getPages Funktion zurück. Die Parameter query und param werden weitergereicht und gelten damit auch für alle andere Funktionen.
Beispiel 1
// Alle News- und Eventseinträge holen und nach Name sortieren (Ausführliche Schreibweise)
$query = array(
"where" => "type = 'news/entry' OR type = 'events/entry'",
"order" => "name DESC"
);
$param = array(
"no_nav_hide" => 1, // "Nicht in Navigation anzeigen" beachten,
"deleted" => 0 // auch gelöschte Seiten anzeigen
);
// Abfrage im aktuellen Mandanten durchführen
$new_events = $site->getPages($query,$param);
// Kürzere Schreibweise
$news_events = $site->getPages(
array(
"where" => "type = 'news/entry' OR type = 'events/entry'",
"order" => "name DESC"
),
array(
"no_nav_hide" => 1 // "Nicht in Navigation anzeigen" beachten
)
);
Beispiel 2
// Such-Seiten im aktuellen Mandanten suchen
$suchseiten = $site->getPages(array("where" => "type = 'search'"));
// Den ersten Treffer als separates PageObjekt speichern
$suchseite = $suchseiten->next();
// Namen der Sucheseite ausgeben
echo $suchseite->field['name'];