is_subpage_of(ID) ?

  • Hallo,

    ich habe mich gerade dusselig gesucht, aber nichts dazu gefunden. Gibt es ein Plugin/Template Tag/Funktion, mit dem ich abfragen kann, ob eine Seite eine Unterseite der Seite mit der ID 3 ist?

    Man kann es ja abfragen (zumindest funktioniert das bei mir in WP2.2):

    PHP
    <?php
    if($post->post_parent == '3') {
    	echo "ausgabe text";
    }
    ?>


    Daraus würde ich dann gerne für mich aus ästhetischen und codetechnischen Gründen ein kleines Plugin machen, SOFERN es so etwas noch nicht gibt.. daher die Frage. ;)

    Stelle mir das dann so vor:

    PHP
    <?php
    if(is_subpage_of(3)) {
        echo "ausgabe text";
    }
    ?>


    Sollte codetechnisch kein Problem sein, aber die Frage, ob es dafür schon eine saubere bereits verfügbare Lösung gibt?

    Oder bin ich gerade voll auf dem Holzweg? :)

    Grüße

    wpseek.com - Die WordPress-Code-Suchmaschine

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Ich glaub, dafür gibt's noch nichts.

    Man müsste ne rekursive Funktion schreiben, also eine, die sich quasi selbst aufruft. Abbruchsbedingung müsste sein, dass die Seite dann keine "Mutterseite" hat.

    Probier's mal so (ungetestet und auf die Schnelle)

    (Das global $posts weil die aktuelle ID nicht überall "bekannt" ist ...)

    EDIT ... Hab's doch eben getestet. Scheint zu funktionieren.

    :-)

    Nein, das ist keine Brille, das sind Augenränder!

    Print- und Webdesign

    Einmal editiert, zuletzt von pufaxx (10. Juni 2007 um 02:13)

  • Rekursiv muss sie natürlich sein, klar, und so ähnlich wie dein Code habe ich das hier auch liegen, und es funktionierte auch schon. :)
    Allerdings frage ich mich in solchen Situationen immer, warum denn noch niemand zuvor so etwas benötigte und habe daher vorher hier nachgefragt, um sicherzugehen, das Rad nicht unnötigerweise noch einmal erfinden zu müssen...

    Aber offenbar hat dies noch niemand nachgefragt.. ich warte noch bis morgen, vllt kennt ja jemand ein bereits existierendes Plugin mit dieser Funktionalität, ansonsten mach ich daraus morgen ein kleines Conditional Plugin.

    Wäre ja auch was für Wordpress Core... ;)

    edit: Dafür gibt's nen Credit-Eintrag im Plugin, pufaxx. :D

    wpseek.com - Die WordPress-Code-Suchmaschine

    Einmal editiert, zuletzt von Alphawolf (10. Juni 2007 um 02:25)

  • Hehe, ja, wie gesagt.. vom Code ist es ja einfach aufzuziehen, aber gerade deshalb frag ich mich, warum es so etwas nich nicht längst gab...

    Müsste es dann nur noch leicht umbauen, dass man auch mehrere IDs (kommasepariert) eingeben kann, aber das ja nur Schnickschnack im Grunde..

    wpseek.com - Die WordPress-Code-Suchmaschine

  • äääh - Ihr hängt mich ab, ich komme nicht so ganz mit, ich steig in eurem Fachgespräch nicht s richtig durch - trotzdem mal ein schüchterner Versuch. Meinst Du sowas? Hilft das weiter?

    tschüß [size=24][color=olive]n[/color][/size]epf

    Einmal editiert, zuletzt von nepf (10. Juni 2007 um 08:22)

  • Wie hast Du's denn geschafft, bei wp-plugins.net etwas reinzustellen? Ich wollte vorhin auch ein paar Sachen dort veröffentlichen, aber irgendwie "not allowed to edit this page" ...?

    Muss man da erst von Admins freigeschaltet werden? Und was mich auch wundert - >> hier ist Folgendes zu lesen:

    Zitat

    Please fill in your email. It won’t get displayed anywhere else ...

    ... nur hab ich nirgends eine Möglichkeit gefunden, meine E-Mail-Adresse anzugeben ...?


    EDIT: Hat jetzt funktioniert, man muss scheinbar bloß ne Stunde warten oder so.
    :-)

    Nein, das ist keine Brille, das sind Augenränder!

    Print- und Webdesign

    Einmal editiert, zuletzt von pufaxx (10. Juni 2007 um 19:48)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!