[Résolu] Mot de passe visible (Créer un compte)

  • WordPress :5.2
  • Statut : résolu
  • Ce sujet contient 27 réponses, 3 participants et a été mis à jour pour la dernière fois par ferman, le il y a 6 mois.
15 sujets de 1 à 15 (sur un total de 28)
  • Auteur
    Messages
  • #2290389
    JeanguyT
    Participant
    Padawan WordPress
    77 contributions

    Bonjour,

    Ma configuration WP actuelle :
    – Version de WordPress : 5.3.2
    – Version de PHP/MySQL : 7.3.12 / 5.6.43
    – Thème utilisé : Avada
    – Thème URI : http://avada.theme-fusion.com/
    – Extensions en place : Akismet Anti-Spam (4.1.3), CDN Enabler (1.0.9), Contact Form 7 (5.1.6), Contact Form 7 Skins (2.1.4), Debug Info (1.3.8), Duplicate Page (4.0), Easy Video Player (1.1.8), Enhanced Media Library (2.7.2), Flamingo (2.1), Forum_wordpress_fr (4.2), Fusion Builder (2.1.2), Fusion Core (4.1.2), LayerSlider WP (6.10.0), LoginPress – Customizing the WordPress Login (1.4.1), LoginPress Pro (2.3.1), Popup Maker (1.8.14), Query Monitor (3.5.2), reSmush.it Image Optimizer (0.2.3), SiteOrigin CSS (1.2.4), Slider Revolution (6.1.5), Slider Revolution Typewriter Effect (2.0.0), Slider Revolution Whiteboard Add-on (2.0.0), Smart Slider 3 (3.3.25), The Events Calendar (4.9.13), The Events Calendar Extension: Calendar Customizer (1.0.0), The Events Calendar PRO (4.7.10), The Events Calendar Shortcode & Block (2.3), UpdraftPlus – Backup/Restore (1.16.21), WP Custom Admin Interface (7.20), WP File Manager – PRO (7.3), WP Migrate DB (1.0.11), WP Super Cache (1.7.0)
    – Adresse du site : https://www.metmmetm.fr
    – Nom de l’hébergeur : Apache

    Mon site contient plusieurs pages protégées par un mot de passe. A l’ouverture, un champ permet la saisie mais le mot de passe est invisible. Est-il possible d’ajouter un bouton qui permet de l’afficher.

    Cordialement

    #2290405
    ferman
    Participant
    Maître WordPress
    2628 contributions

    Bonjour,

    Ce ne sera pas facile. Je n’ai trouvé qu’une extension permettant de faire ce que vous voulez et encore, en version “pro”, chère. Je ne crois pas que ce soit une vraie possibilité. En tout cas là je ne pourrai pas aider.

    Je vois que Events Calendar n’est plus à l’ordre du jour.

    #2290440
    JeanguyT
    Participant
    Padawan WordPress
    77 contributions

    Bonjour,

    Concernant The Events Calendar, ouvrir directement un calendrier spécifique après login avec un rôle auteur n’est pas faisable. La page du calendrier global étant visible après login, je leur ai adressé une nouvelle demande de support :

    Le bouton Événements est ajouté dans la barre d’administration lors de l’installation de votre plugin. Sur mon site, les utilisateurs avec le rôle auteur ont accès uniquement à l’ajout/modification d’événements. Est-il possible de ne conserver que ces fonctions ou supprimer l’icône de la barre.
    Le plugin “Custom Admin Toolbar” n’identifie pas ce bouton dans la barre d’administration. Par contre, dans la barre de menu “Evénements” il est possible de ne conserver que ces deux fonctionnalités “ajouter/modifier un événement”.

    Ils n’ont pas de solution à ma demande mais propose un développement spécifique.

    Joyeuse fêtes

    #2290441
    ferman
    Participant
    Maître WordPress
    2628 contributions

    Bonjour,

    Concernant The Events Calendar, ouvrir directement un calendrier spécifique après login avec un rôle auteur n’est pas faisable.

    Cela fait quelque temps déjà mais il me semble bien que j’y étais arrivé (avec la version gratuite) en appliquant des CSS de manière conditionnelle suivant l’auteur. C’était une méthode à base de CSS donc “pas noble” et qui nécessitait de modifier le code en cas de modification des communes participantes mais qui fonctionnait (je m’étais limité à deux villes). Je serais curieux de savoir combien demanderont les développeurs de Events Calendar. Avez-vous réfléchi à la solution du multisite. Je n’ai jamais pratiqué mais je crois que ce serait bien adapté à votre problème.

    Pour votre autre question concernant le mot de passe: en principe il suffirait de s’inspirer du formulaire dans la page utilisateurs qui, lui,  permet de cacher ou montrer le mot de passe. Quelqu’un de plus expert que moi en matière de j-query (c’est avec ça que ça fonctionne) pourrait sans doute y arriver.

     

     

    #2290487
    ferman
    Participant
    Maître WordPress
    2628 contributions

    Si ça vous intéresse, je pense avoir trouvé comment entrer le mot de passe en clair (mais pas de basculer de l’un à l’autre).

    Bonnes fêtes à vous aussi.

    • Cette réponse a été modifiée le il y a 6 mois et 1 semaine par ferman.
    • Cette réponse a été modifiée le il y a 6 mois et 1 semaine par ferman.
    • Cette réponse a été modifiée le il y a 6 mois et 1 semaine par ferman.
    #2290493
    JeanguyT
    Participant
    Padawan WordPress
    77 contributions

    Bonsoir,

    J’utilise maintenant Popup Maker qui est facilement paramétrable. L’accès membres permet la consultations des documents internes de l’assos, une page dédiée affiche des liens vers divers documents et le calendrier correspondant (selon localisation et mot de passe). Les documents sont au format pdf permettant la visualisation ou l’enregistrement du fichier (visualiser en utilisant les codes déjà communiqués). Pour le calendrier j’utilise le “shortcode” de TEC qui filtre les événements pour chaque localisation. Cela répond au besoin et fonctionne correctement.

    L’administration ouvre la boite du login (LoginPress). Le mot de passe peut être visualisé. Les auteurs connectés gèrent uniquement le calendrier des événements (ajout/modification).

    J’ai essayer de simplifier au mieux pour permettre aux administrateurs néophytes de reprendre la main sur le site.

    Cordialement

     

    #2290494
    JeanguyT
    Participant
    Padawan WordPress
    77 contributions

    Pour la saisie du mot de passe en clair je suis preneur.

    Joyeuse fêtes à vous et toute votre famille.

    #2290534
    ferman
    Participant
    Maître WordPress
    2628 contributions

    Bonjour,

    Ci-joint trois codes. Les deux premiers sont à placer dans functions.php de votre thème enfant, le troisième (pas nécessaire) allant dans style.css .

    Sources: pour le code 1 (1, 2); pour le code 2 (1,2).

    J’ai repris ces codes en les modifiant à peine (mais je les ai testés). Pour le code 1 les modifications par rapport au code d’origine sont:

    1. Attribution d’une id au formulaire (‘id=”custompass”) pour qu’il soit plus facilement manipulable en CSS et éventuellement en JS.
    2. Modification du texte du formulaire
    3. Remplacement de l’input “password” par un input “text”
    4. Addition dans le formulaire d’un champ autocomplete=”off”. Ceci empêche les suggestions de texte sous la fenêtre du texte. Embêtant quand il s’agit d’un mot de passe.

    Le code 2 sert à modifier la durée de validité du mot de passe, par défaut 10 jours,  ce qui est trop pour une page à accès réservé. J’ai mis 30 secondes et c’est facilement modifiable. Vous pouvez aussi faire en sorte qu’il soit valide jusqu’à fermeture du navigateur (2)

    Le code 3 est juste là pour donner un exemple de présentation. Il est complètement modifiable et pas nécessaire.

    Pour le Jaba script (basculement clair<->masqué), je regarderai à l’occasion mais ça ne me semble pas utile.

    function my_password_form() {
        global $post;
        $label = 'pwbox-'.( empty( $post->ID ) ? rand() : $post->ID );
        $o = '<form id="custompass" action="' . esc_url( site_url( 'wp-login.php?action=postpass', 'login_post' ) ) . '" method="post">
            ' . __( "Cette page est privée. Veuillez entrer votre mot de passe." ) . '
            <label for="' . $label . '">' . __( "Password:" ) . ' </label><input name="post_password" id="' . $label . '" type="text" size="20" maxlength="20" autocomplete = "off"/><input type="submit" name="Submit" value="' . esc_attr__( "Submit" ) . '" />
            </form>';
    		
    return $o;
    }
    add_filter( 'the_password_form', 'my_password_form' );
    code 1

    function wpse_custom_post_password_expires( $expires ) {
        
    	return time() + 30; // Expires in 30 seconds
    	}
    add_filter( 'post_password_expires', 'wpse_custom_post_password_expires' );
    code 2

    #custompass  {
    	width: 50%;
    	border: solid;
    	border-radius:2%/12%;
    	border-color: coral;
    	color: green;
    	background-color: azure;
    	padding-left:5%
    }
    code 3

    #2290625
    ferman
    Participant
    Maître WordPress
    2628 contributions

    Bonjour,

    Attention, en relisant le code css, je me rends compte qu’il manque un “;”. A la dernière ligne on devrait voir “padding-left:5%;“. Si vous essayez ce code, il faut impérativement corriger ça.

    #2290705
    JeanguyT
    Participant
    Padawan WordPress
    77 contributions

    Bonjour,

    Je n’avais pas envisagé de créé un thème enfant car la reprise du site présenterait peut-être une difficulté pour un néophyte. Si le thème était mis à jour, les modifications (css personnalisé) seraient perdues ? Dans ce thème enfant puis-je transférer le css personnalisé ?

    Concernant la durée de validité du mot de passe pour chaque localisation, il restera toujours le même. Ou éventuellement modifié en cas de nécessité.

    Cordialement

     

    #2290746
    ferman
    Participant
    Maître WordPress
    2628 contributions

    Bonjour,

    Oui, si vous ne prenez pas certaines précautions, tout ce que vous aurez introduit sera effacé à la prochaine mise à jour du thème. Puisque vous ne voulez pas créer de thème enfant, vous avez deux solutions:

    1. Vous sauvegardez ces fonctions dans un coin et les rajoutez après les mises à jour  par FTP: la fonction css dans le fichier style.css et les deux fonctions php dans le fichier functions.php.
    2. Depuis le tableau de bord wp  ajoutez les css en tant que css additionnelles apparence ->customizer->css additinnelles. Vous installez aussi l’extension “my custom functions” qui vous permet d’ajouter les fonctions php en “fonctions additionnelles”. Dans cette extension, si vous faites une erreur il se peut que vous ayez une page blanche. Ce n’est pas grave: par FTP vous pouvez accéder aux fichiers du plugin  et rétablir la situation en mettant le bouton start en stop. Ensuite, vous enlevez la fonction, remettez sur start  et regardez votre erreur.

    Cela étant dit, il est simple de faire un thème enfant avec “child theme configurator” et ça ne change rien pour un néophyte ou plutôt si: une fois le thème fait, il n’a plus à s’occuper de rien. Vous devriez essayer. Il y a plein d’informations et de tutoriels sur le web.

    Fichiers joints :
    Vous devez être connecté pour voir les fichiers joints.
    #2290757
    JeanguyT
    Participant
    Padawan WordPress
    77 contributions

    Bonjour,

    J’ai effectué une sauvegarde avant modifications.

    J’ai créé mon thème enfant avec Avada child theme. Dans le répertoire /wpadmin/wpcontent/themes/avadachildtheme/ j’ai modifié les fichiers fonctions.php et styles.css en rajoutant les codes que vous m’avez adressés. J’ai effectué un premier essai deux anomalies :

    • le pied de page contenait un widget supplémentaire identique au au widget 2 (que j’ai suppimé)
    • la zone de saisie du mot de passe dans accès membres était de la largeur de la fenêtre (j’ai modifié le css en rajoutant dans ‘CSS personnalisé’ :

    #tribe-bar-form input[type=text], .input-text, input[type=password], input[type=text] {
    width: 20%;
    }

    Est-ce bien dans ce fichier que je dois insérer le css ?

    Cordialement

     

    #2290761
    ferman
    Participant
    Maître WordPress
    2628 contributions

    Ce que je vous ai donné correspond au formulaire “page protégée” de wordpress. Donc #tribe-bar-form input[type=text], .input-text, input[type=password], input[type=text] {
    width: 20%;

    n’est pas concerné.

    Je vois que ce vous avez fait fonctionne bien.

    Puisque vous avez un thème enfant  (ce sera bien plus simple à l’usage) les css doivent se mettre dans le fichier style.css. En pièce jointe, je vous mets ce que vous devez observer en mettant le code css. J’y ai ajouté deux petites marges pour décoller un peu le formulaire. margin-left:20%, margin-bottom:1%. Et là vous pouvez donner libre cours à votre imagination.

    S’il n’y a pas d’autre question sur ce sujet précis, merci de passer en “résolu”.

    Fichiers joints :
    Vous devez être connecté pour voir les fichiers joints.
    #2290763
    JeanguyT
    Participant
    Padawan WordPress
    77 contributions

    Arès la sélection de la localisation, sur ma page la zone de saisie n’apparaît pas telle que celle qui est présentée dans votre fichier joint. Pas de couleur ni de centrage. En modifiant la marge,  la disposition (centrage)  dans le css du thème enfant rien ne se passe. Me suis-je trompé de css pour la modification ?

    #2290767
    ferman
    Participant
    Maître WordPress
    2628 contributions

    Je ne pense pas que vous vous soyez trompé sauf peut être dans le format. Il ne faut pas copier depuis cet éditeur mais depuis le champ de code. Donc je vous renvoie ce code. Copiez le directement dans votre fichier style css du thème enfant. Si ça ne va pas essayez de mettre !important après les valeurs réticentes comme indiqué à la dernière ligne (c’est juste un exemple).

    #custompass  {
    	width: 50%;
    	border: solid;
    	border-radius:2%/12%;
    	border-color: coral;
    	color: green;
    	background-color: azure;
    	padding-left:5%;
    margin-left:20%;
    margin-bottom:1%;
    }
    
    
    
    background-color: azure!important;

    • Cette réponse a été modifiée le il y a 6 mois et 1 semaine par ferman.
    • Cette réponse a été modifiée le il y a 6 mois et 1 semaine par ferman.
    • Cette réponse a été modifiée le il y a 6 mois et 1 semaine par ferman.
15 sujets de 1 à 15 (sur un total de 28)
  • Vous devez être connecté pour répondre à ce sujet.