Tutorials

Einige nützliche Hilfen und Code-Schnipsel, die ich immer wieder benötige und deshalb hier für alle sammle.

Zurück zur Übersicht

TYPO3 Extbase: Get all Pids recurive from PageTree

#Tutorials#TYPO3#PHP

Möchte man in Extbase alle Pids der Unterseiten einer gegebenen Seite bekommen, beispielsweise alle Unterordner eines Ablage-Ordners mit durchsuchen, so kann man dies mit folgender Funktion tun.

Funktion


function getTreePids($parent = 0, $as_array = true){
    $depth = 999999;
    $queryGenerator = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance( 'TYPO3\\CMS\\Core\\Database\\QueryGenerator' );
    $childPids = $queryGenerator->getTreeList($parent, $depth, 0, 1); //Will be a string like 1,2,3
    if($as_array) {
        $childPids = explode(',',$childPids );
    }
    return $childPids;
}

Benutzung


$childs = getTreePids(5);

Kommentare

  • Michael
    Kann man auch mit dem Page-Repository lösen ;)
    Antworten
    • Andre Rinas
      Hallo Michael, danke für Antwort. Habe ich mitlerweile auch schon herausgefunden :)
      Antworten
      • Björn
        Habt ihr zufällig auch herausgefunden, wie das im Backend-Kontext funktioniert, wo man das Page Model nicht auf die pages-Tabelle mappen kann?
        Antworten

Hinterlasse einen Kommentar

Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Kommentar wird gespeichert
Danke für deinen Kommentar! Sobald er freigegeben wurde erscheint er hier.