Ergebnis 1 bis 6 von 6

Thema: Wie findet man alle Unterseiten einer gegebenen PageID? (4.13.x)

  1. #1
    Contao-Nutzer
    Registriert seit
    03.12.2014.
    Beiträge
    60

    Standard Wie findet man alle Unterseiten einer gegebenen PageID? (4.13.x)

    Moin zusammen,

    ich möchte in einem Template die IDs aller Unterseiten meiner aktuellen Position ermitteln. Gibt es dafür eine Methode direkt innerhalb von Contao? Oder muss ich mir das selbst aus der Datenbank ermitteln?

    Vielen Dank für einen kurzen Hinweis!
    LG

  2. #2
    Contao-Nutzer
    Registriert seit
    10.06.2021.
    Beiträge
    242
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Dafür kannst du PageModel::findPublishedByPid nutzen.
    Siehe https://github.com/contao/core-bundl...Model.php#L374

  3. #3
    Contao-Nutzer
    Registriert seit
    03.12.2014.
    Beiträge
    60

    Standard

    Danke für die schnelle Antwort. Diese Funktion hatte ich schon gesehen aber die hilft mir nicht direkt weiter. Ich erhalte darüber nur eine Liste der direkten Unterseiten. Ich brauche alle Unterseiten ... also alle weiteren Unterseiten die sich von einem Ausgangspunkt ableiten.

    Und ... diese Funktion liefert mir "nur" die veröffentlichten Seiten. Es wäre super, wenn ich wirklich alle bekäme. Also auch die unveröffentlichten. Letzteres wäre aber zu "verschmerzen".

    Gibt es dafür auch einen "einfachen" Weg?

  4. #4
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.943

    Standard

    Zitat Zitat von Brubbel Beitrag anzeigen
    Ich erhalte darüber nur eine Liste der direkten Unterseiten. Ich brauche alle Unterseiten ... also alle weiteren Unterseiten die sich von einem Ausgangspunkt ableiten.
    Du könntest für jede dieser Unterseiten wieder die getPublishrdByPid() aufrufen, bis Du rekursiv alle Seiten hast.

    Und ... diese Funktion liefert mir "nur" die veröffentlichten Seiten.
    Evtl. gibt es bereits eine findByPid(), ansonsten schau Dir die findPublishedByPid() an und baue sie dir entsprechend selbst.
    Contao-Community-Treff Bayern: http://www.contao-bayern.de

  5. #5
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.114
    Partner-ID
    10107

    Standard

    Zitat Zitat von Brubbel Beitrag anzeigen
    Oder muss ich mir das selbst aus der Datenbank ermitteln?
    Grundsätzlich ja. Im Legacy Framework kann man dafür
    PHP-Code:
    \Contao\Database::getInstance()->getChildRecords(
    nutzen.
    » sponsor me via GitHub or PayPal or Revolut

  6. #6
    Contao-Nutzer
    Registriert seit
    03.12.2014.
    Beiträge
    60

    Standard

    Vielen Dank, Spooky. Das hat damit wunderbar funktioniert.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •