• Gelöst chakotay

    (@chakotay)


    Hallo zusammen,

    seit 2 Tagen versuche ich ein WP-Problem zu lösen ohne css oder sonstige Programmierkenntnisse – es gelingt mir nicht und vielleicht kann mir hier ja jemand helfen? Bin WP-Neuling, aber kenne schon einige Basics.

    Folgendes Szenario:
    Normale öffentliche Webseite (kein Blog) mit ein paar Menüpunkten. Ein Menüpunkt (samt Unterseiten) soll nur für die Besucher zugänglich sein, die ein von mir vergebenes Passwort kennen. Die Besucher sollen das Passwort nur einmal eingeben müssen, nämlich in dem Menüpunkt (Elternseite) und nicht mehr in den Unterseiten. D.h., dass ich nach einem Plugin suche, dass das Passwort auf die Unterseiten vererbt.
    Ich habe den eingebauten Passwortschutz von WP verwendet und dazu das Plugin „Smart Passworded Pages“, dass von der Beschreibung her genau das richtige wäre. Allerdings funktioniert es nicht, denn man kommt in die Unterseiten auch ohne PW hinein. Ich habe die Unterseiten jedoch wie vorgeschrieben als „Kindseiten“ im Sinne der Elternseite Login definiert.

    „Smart Passworded Pages“ ist mit der 4.4.2-Version aber auch noch nicht getestet – vielleicht liegt es ja daran.

    Meine Frage nun konkret:
    – Kennt jemand eine möglichst einfache Lösung, um einen kompletten geschützten Bereich innerhalb seiner Webseite zu kreieren, aber nicht mit Benutzername und dem ganzen Commerce-Kram, sondern einfach nur dadurch, dass ich als Admin ein Passwort weitergebe. Das Passwort sollte nur einmal in der Elternseite eingegeben werden, damit man sich auf den Unterseiten bewegen kann.
    – Falls nein, kennt sich hier jemand mit dem Plugin „Smart Passworded Pages“ aus und könnte mir helfen?

    Vielen Dank im Voraus für eure Mühe,
    ein WP-Newbie grüßt in die Runde,

    Chakotay

Ansicht von 14 Antworten – 1 bis 14 (von insgesamt 14)
  • du kannst dies in die functions.php deines Child Themes geben,
    erstellst du kein Child Theme ist dies beim nächstn Theme Update weg oder…

    du nutzt und versuchst dich damit

    https://de.wordpress.org/plugins/my-custom-functions/

    Themenersteller chakotay

    (@chakotay)

    Hallo Monika,

    vielen Dank für deinen Tipp!
    Ich habe ein Child Themes erstellt und es ist aktiviert.
    Weiterhin habe ich das Plugin „Code Snippets“

    https://wordpress.org/plugins/code-snippets/

    , in dem ich laut deines Links auch den Code eingegeben und ebenfalls aktiviert habe.

    Meine Nachfrage nun:
    Wie und wo kann ich denn nun einstellen, welcher Menüpunkt samt Unterseiten mit einem Passwort geschützt werden sollen und wo kann ich das von mir gewählte Passwort eintragen? Gibt es da einen Bereich im Code, den ich entsprechend umschreiben muss? Falls ja, wie?

    Sorry, wenn das eine dumme Frage ist, aber wie ich schrieb, habe ich keinen Schimmer von css und nur Grundkenntnisse in html. Benutze für WordPress also lieber einfach zu durchschauende Plugins oder benötige eine Schritt-für-Schritt-Anleitung.

    Wäre super, wenn du nochmal helfen könntest!!
    Gruß,
    Chakotay

    in dem du diese Seite, die die vielen Kinder hat öffnest/editierst.

    Dann siehst du rechts davon im Menupunkt veröffentlichen „Sichtbarkeit“ dort vergibst du dein Passwort…

    dazu brauchts weder CSS noch PHP noch sonstwas, tun…:-)

    Themenersteller chakotay

    (@chakotay)

    Mmh. Ich stehe kurz vor der Krise.
    Habe alles so gemacht, wie du vorgeschlagen hast und auch mit den WP-eigenen Bordmitteln (rechts „Sichtbarkeit“) die Elternseite mit einem Passwort geschützt. Sehe ich mir die Seite an, so erscheint kein Login-Button, sondern sie ist weiter öffentlich.
    Dann habe ich gedacht, dass ich zur Sicherheit mal dein erwähntest Plugin „My Custom Functions“ installiere und den Code dort hineingebe. (Habe natürlich vorher mein Plugin „Code Snippet“ deaktiviert.
    Gleiches Ergebnis: Geschützt wird gar nix.
    Dann habe ich die functions.php meines Child-Themes geöffnet und den Code dort an versch. Stellen eingefügt. Ergebnis: meine Homepage besteht nur noch aus weißem Hintergrund.
    Hiiilfee! ;-(
    P.S. Den weißen Hintergrund habe ich natürlich wieder in den Griff gekriegt, indem ich den Code aus der functions.php gelöscht habe; diesbezüglich alles gut. Nur das mit dem Login für Eltern- und Kindseite kriege ich einfach nicht gebacken.

    nachdem du alles gemacht hast,
    hast du dich ausgeloggt und dann kontrolliert?

    Themenersteller chakotay

    (@chakotay)

    Ja, ich habe auch daran gedacht mich abzumelden (im 2. Anlauf…). Aber ich kriege wie beschrieben keine Loginseite. Alles öffentlich.

    Themenersteller chakotay

    (@chakotay)

    Ich wechsele mal das Theme und probiere das Ganze dann nochmal. Berichte dann.

    Themenersteller chakotay

    (@chakotay)

    Tja, auch bei einem Theme-Wechsel (zumindest bei der Live-Vorschau) erscheint kein Login…
    Liebe Monika, hast du noch eine Idee?
    Du hättest was gut bei mir – vielleicht eine schöne heiße Tasse Kaffee? 🙂

    ich habe den von mir verlinkten Code in die functions.php vom Twenty Sixteen eingebaut

    ganz unten hineinkopiert

    hab einer Testseite mit Kindern ein Passwort vergeben

    mich ausgeloggt

    Browsercache geleert

    ruf ich die Elternseite auf, seh ich das Login
    ruf ich eine Unterseite dieser Seite auf, werde ich zum Login der Elternseite umgeleitet, ganz automatisch…

    bei mir funktionierts einwandfrei … 🙁

    virtuellen Espresso nehm ich immer 🙂

    Themenersteller chakotay

    (@chakotay)

    *schon mal lecker Espresso rüberschick für deine Mühe*

    Browsercache löschen – daran habe ich nicht gedacht. Ich gebe nicht auf und probier’s noch mal und melde mich gleich wieder.

    Themenersteller chakotay

    (@chakotay)

    So,
    brav abgemeldet und Browsercache gelöscht. Keine Login-Aufforderung…

    Jetzt habe ich das Plugin „My Custom Functions“ deaktiviert und versuche es nochmal, indem ich den Code direkt in die functions.php einfüge.

    Da es beim letzten Mal ja nur noch eine weiße Seite statt einer Homepage gabe, kopiere ich dir meine functions hier hinein. Sie ist ja nur sehr kurz, da es sich um ein Child Theme handelt.
    Wenn ich dich richtig verstanden habe, würde ich den code also nach „// END ENQUEUE PARENT ACTION“ einfügen, ja?

    <?php
    // Exit if accessed directly
    if ( !defined( 'ABSPATH' ) ) exit;
    
    // BEGIN ENQUEUE PARENT ACTION
    // AUTO GENERATED - Do not modify or remove comment markers above or below:
    
    if ( !function_exists( 'chld_thm_cfg_parent_css' ) ):
        function chld_thm_cfg_parent_css() {
            wp_enqueue_style( 'chld_thm_cfg_parent', trailingslashit( get_template_directory_uri() ) . 'style.css' );
        }
    endif;
    add_action( 'wp_enqueue_scripts', 'chld_thm_cfg_parent_css' );
    
    // END ENQUEUE PARENT ACTION

    Moderationshinweis: Bitte Code auch mit Backticks (`) auszeichnen, da die Beiträge sonst schlecht lesbar sind. Danke, Bego

    Themenersteller chakotay

    (@chakotay)

    @ mod: sorry…

    Irgendetwas stimmt wohl grundsätzlich bei meiner Seite nicht.
    Ich habe vorhin 2 Testseiten erstellt und sie auch wieder gelöscht. Aber sie erscheinen immer noch, wenn ich mir die Seite ausgeloggt anschauen möchte. Wenn ich den Link aktiviere, erfolgt die Meldung, dass die Seite nicht existiert.
    Mmh.
    (Cache wurde gelöscht)

    Das Einfügen des Codes in die functions hat auch wieder nicht funktioniert.

    Falls noch irgend jemand eine Idee hat, wie ich Teile meiner Seite mit einem Passwort, dass ich einfach denjenigen weitergebe, die es erhalten sollen, schützen kann – ich bin für jede Anregung oder Problemlösung dankbar.

    Euch allen ein schönes Wochenende!
    Chakotay

    ok den code ohne <?php voran einfügen

    so ganz unten in die functions.php eines Twenty-irgendwas themes
    und dieses dann aktivieren…
    besser du crasht ein Standard Theme als gleich deines 🙂

    function password_protect_children( $post ){
    	foreach( get_post_ancestors( $post ) as $parent ) {
    		if( post_password_required( $parent ) ) {
    			$location = get_permalink( $parent );
    			wp_redirect( $location );
    			exit;
    		}
    	}
    }
    add_action( 'template_redirect', 'password_protect_children' );

    was prinzipiel nicht stimmt kann ich nicht sagen,

    nutzt du ein Cache Plugin?

    wenn dann leere dieses aus und deaktiviere es solang du an dem Problem arbeitest..

    Themenersteller chakotay

    (@chakotay)

    Ich haaahaaab’s!!!!!!

    Uff, danke Monika, jetzt hast du ein Fass Espresso bei mir gut!!!! :-))

    Ja, das Cache-Plugin war der Übeltäter in Kombi mit meinem Browser (Safari). Ich habe nach Leerung und Deaktivierung des Cache-Plugins den Browser-Cache nicht nur über den Menüpunkt „Entwickler“ geleert, sondern über die Grundeinstellungen von Safari (Verlauf etc. pp.).
    Mannomann, drei Tage rauchender Kopf und brennende Augen… Dabei war mein Wunsch doch prinzipiell ganz simpel, finde ich…

    Jetzt mache ich mein Notebook aus und lasse mir den Frühling um die Ohren wehen.

    Dir, liebe Monika, ein schönes Wochenende und lass dir das Fass Espresso schmecken! ;.)

    Grüße in die Runde,
    Chakotay

Ansicht von 14 Antworten – 1 bis 14 (von insgesamt 14)

Das Thema „Teilbereich des Menüs mit Passwort schützen“ ist für neue Antworten geschlossen.