Seiten ausblenden

  • hi,


    bin wp-newbe und hab gleich mal meine erste frage:


    will für meine mandanten einen service einrichten.

    sie sollen sich anmelden können und dann zugriff auf dinge haben.


    stelle mir das erst mal so vor, gegen einwände und verbesserungen eurerseits hab ich aber auch nichts ;) :

    - erst registrieren, danach status "registrierter benutzer". noch KEIN zugriff auf mandantenbereich.

    - nach meiner aktivierung neuer status. dann zugriff auf mandantenbereich.

    würde das gerne so lösen, dass ich eine seite einblende, sofern man sich ordnungsgemäß angemeldet hat.

    wie ich die seite ausblende mit exclude weiß ich, weiß aber nicht, wie man sie nach bedarf wieder einblendet ;)

    das mit dem status ist auch nicht ausgereift. meine mandanten sollen eigentlich nur lesen können und nichts an der seite verändern können. glaube dann ist der status mitarbeiter misst, oder?!


    danke schon mal im voraus!


    gruß
    dom!n!k

    • 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

  • Du könntest zweimal die Seitenauflistung einbinden und je nach Benuterlevel wird eine von beiden verwendet. Mit ohne und ohne exclude.

    PHP
    <?php global $user_level; if ($user_level > 1) { ?>   
    Wenn user_level mindestens 2, dann Seiten-Auflistung (list_pages) ohne exclude.
    <?php } else { ?>
    Wenn nicht, dann Seiten-Auflistung mit exlude.
    <?php } ?>

    Bsp-Code:


    PHP
    <?php global $user_level; if ($user_level > 1) { ?>
    <?php wp_list_pages('sort_column=menu_order&title_li=<h2>Seiten</h2>' ); ?>
    <?php } else { ?>
    <?php wp_list_pages('exclude=20&sort_column=menu_order&title_li=<h2>Seiten</h2>' ); ?>
    <?php } ?>


    Der user_level orientiert sich an den Benutzerrollen, die du vergibst.

    "Eine gut gestellte Frage ist schon halb beantwortet."

  • wow, cool danke!


    leider funzt es nicht zu 100%!

    wenn ich ausgeloggt bin, dann zeigt er die seite nicht an. alles schön und gut.
    wenn ich mich als admin einlogge dann zeigt er sie an. auch gut.
    aber als registrierter leser geht da gar nichts!!!!!

    mache ich was falsch?!
    habe nur deinen quelltext hineinkopiert.

  • dankeschön. nun klappts!!!!

    und wenn ich als admin andere sachen eingeblendet haben will als meine leser?! gibts da auch noch was, was ich einfügen kann!? ein wenig in eigenrechie hab ich schon rumprobiert, aber hab da nicht so die ahnung ;)

  • PHP
    <?php global $user_level; if ($user_level > 1) { ?>
    <?php wp_list_pages('sort_column=menu_order&title_li=<h2>Seiten</h2>' ); ?>
    <?php } else { ?>
    <?php wp_list_pages('exclude=20&sort_column=menu_order&title_li=<h2>Seiten</h2>' ); ?>
    <?php } ?>

    Der user_level orientiert sich an den Benutzerrollen, die du vergibst.[/quote]

    Ich habe dies versucht in meine Sidebar.php einzubinen leider ohne erfolg (blib alles beim alten) wenn ich das richtig mitbekommen habe, gibts 2 wp_list_pages eine für unbekante Users und eine für User mit bestimtem level, wo kann ich aber diese beiden wp_list_page anpassen? und wo muss ich diesen php code genau einbinden??

    danke für eure hilfe!

  • Zitat

    gibts 2 wp_list_pages eine für unbekante Users und eine für User mit bestimtem level,


    Ja. Das eine ist für registrierte und eingeloggte User, das andere für Gäste (so war's jedenfalls gedacht).
    Wobei man

    PHP
    <?php if (is_user_logged_in) { ?>

    mit

    PHP
    <?php global $user_level; if ($user_level > 1) { ?>


    ersetzten sollte, wenn man nur zwischen Gast und angemeldet unterscheiden will.

    Zitat

    wo kann ich aber diese beiden wp_list_page anpassen?


    Na genau im gezeigten Code. Beim Codebeispiel wird bei Gästen die Seite mit der ID 20 im Menü nicht angezeigt.

    Achja, du musst nicht wp_list_pages verwenden, sondern kannst auch jeglichen anderen Code benutzen.

    Zitat

    und wo muss ich diesen php code genau einbinden??


    Dort, wo du ihn haben willst. Zum Beispiel dort, wo sonst auch die Seitenauflistung ist - meist in der sidebar.php. Du ersetzt dann das alte wp_list_pages mit diesem Code.

    PS: Vielleicht ist ja auch das was für dich: http://blog.zeitgrund.de/category/plugi…r-members-only/

    "Eine gut gestellte Frage ist schon halb beantwortet."

    Einmal editiert, zuletzt von jottlieb (14. Januar 2007 um 00:49)

  • danke Jottlieb! für deine schnelle antwort! ich habe seit 2 wochen meine ersten php erfahrungen gesammelt und bin so begeisterd sas ich kaum mer loskomme vom pc! richtig angefressen...8)
    aber eben dabei bin ich nun einfach angestanden. ich bins gleich mal am ausprobieren! bin mir aber nicht im klaren was du gemeint hast mit ich brauche kein wp_list_page zu verwenden? :-?

  • ! bin mir aber nicht im klaren was du gemeint hast mit ich brauche kein wp_list_page zu verwenden? :-?


    Na ich weiß ja nicht, was du genau vorhast. Du kannst den Code (ist Benutzer eingeloggt oder nicht) für alles verwenden, was dir nützlich erscheint. Hier wird es eben verwendet, um eine von zwei Seiten-Auflistungen (die von WP generiert werden) anzuzeigen. Und bei der einen Auflistung wird die Seite mit der ID 20 nicht angezeigt.

    "Eine gut gestellte Frage ist schon halb beantwortet."

  • funktioniert!! danke für deinen link! konte es mit hilfe von diesem lösen; hier meine lösung für den der auch gewise sitebar elemente nur eingelogten usern zeigen möchte! Ps. mit dieser lösung kann man die haubtseite (z.b. allgemein ausblenden) dabei werden alle unterseiten mitausgeblendet!! wichtig, rot markiert ist die seite und deren unterseite die ausgeblendet werden sollten.

    PHP
    <?php global $user_login; if ($user_login <> '') { ?> 
                            <?php wp_list_pages('sort_column=menu_order&title_li=<h2>Seiten</h2>' ); ?>
                            <?php } else { ?>
                            <?php wp_list_pages('exclude=[COLOR=Red]23[/COLOR]&sort_column=menu_order&title_li=<h2>Seiten</h2>' ); ?>
                            <?php } ?>

    Einmal editiert, zuletzt von Monika (14. Januar 2007 um 17:07)

  • Na ich weiß ja nicht, was du genau vorhast. Du kannst den Code (ist Benutzer eingeloggt oder nicht) für alles verwenden, was dir nützlich erscheint. Hier wird es eben verwendet, um eine von zwei Seiten-Auflistungen (die von WP generiert werden) anzuzeigen. Und bei der einen Auflistung wird die Seite mit der ID 20 nicht angezeigt.

    habe das nun auch mit meinen Katogorien versucht das heist ich wollte meine katogorien ebenfals zum teil verstecken, aber irgend was mach ich da als kompletter php dau falsch :???: hab das versucht abzuleiten, aber leider ist es mir misslungen, kann mir jemand sagen wiso? hier der code:
    ps. ich vermute der Fehler liegt im rot markierten bereich, weiss aber nicht wie er richtig sein sollte


    <li><h2>Katogorien</h2>
    <ul>
    <?php global $user_login; if ($user_login <> '') { ?>
    <?php wp_list_cats('sort_column=name&optioncount=1&hierarchical=0'); ?>
    <?php } else { ?>
    <?php wp_list_cats[COLOR=Red]('exclude=2&sort_column=name&optioncount=1&hierarchical=0')[/COLOR]; ?>
    </ul>
    </li>

    Einmal editiert, zuletzt von adlerauge (14. Januar 2007 um 16:52)

  • PHP
    <?php global $user_login; if ($user_login <> '') { ?> 
                            <?php wp_list_pages('sort_column=menu_order&title_li=<h2>Seiten</h2>' ); ?>
                            <?php } else { ?>
                            <?php wp_list_pages('exclude=[COLOR=Red]23[/COLOR]&sort_column=menu_order&title_li=<h2>Seiten</h2>' ); ?>
                            <?php } ?>

    Wie vor einiger Zeit im Thred beschrieben, verwende ich den oben abgebildeten Code für eine art "Member" Seiten. Da diese aber bei eingeloggten User nicht ins Auge fallen möchte ich die im Beispiel beschriebene Page mit ID 23 nun noch mit einer anderen Farbe in der Sidebar hervorheben. hab da schon versucht die Zeichen:

    PHP
    <h2>.....</h2>


    mit ein zu beziehen, leider ohne Erfolg.

  • die frage betreffend der Farbänderung steht bei mir immer noch an, kann da niemand helfen? irgend wie kann man doch die Farbe ändern!

    2. ich habe bis jetzt immer alle seiten bei excludet aufgelistet, welche nicht erscheinen dürfen, gibt es einen befehl, mit dem ich die seite 23 und ihre untergeordneten seiten auf einmal exclude?

    beispiel dafür.....

    für User sichtbar:
    über mich
    kontakt
    infos
    ect.

    für members sichtbar:
    über mich
    kontakt
    infos
    ect.
    memberbereich
    -fotos
    -informationen

Jetzt mitmachen!

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