J’ ai un problème, j’ne peux pas appeler un fichier php dans le leader (Créer un compte)

  • Statut : non résolu
6 sujets de 16 à 21 (sur un total de 21)
  • Auteur
    Messages
  • #796464
    ombres-et-lumieres
    Membre
    Chevalier WordPress
    147 contributions

    petite erreur de ma part: comme tu as du le remarquer j’ ai posté à une heure plus que tardive. De plus, j’ étais passablement en « pilotage automatique »,ou « déchiré » comme dit une de mes connaissances, pour en juger, il suffit d’ évaluer le caractère plus ou moins déjanté de mes début de posts. Parfois je fais des doubles journées à double casquettes.
    Donc j’ ai fait une erreur dans mon premier message. Erreur qui s’ est répercutée par la suite.

    Il manquait l’ appel au logout. Le code complet de la condition est:

    <a href=" » title= »Logout »>Log-out <?php ;}
    else { ?><a href=" » title= »Login »>Se connecter

    Donc, en fait, elle fonctionne, du moins si if est vrai: je n’ ai aucun problème pour faire logout. Et c’ est sur cette branche que tu as tiqué. Mais si if est faux, il m’ affiche un lien qui déclenche la fureur divine.

    Cependant, en ce qui concerne le menu, il fonctionne. Simplement, ici, c’ est effectivement la balise du forum qui a déconné et, une erreur succédant à une autre, je me suis juste contenté de recopier ce qui était dans la balise après un bref survol pour confirmer que tout semblait ok.

    Donc voici le code au complet, directement issu de mon éditeur en ligne:

      <li class="home" ><a href=" » title= »Home »>Home
      <?php$my_pages = wp_list_pages('exclude=244, 273, 276&title_li=');
      ?>

    qui est l’ incantation classique de wordpress pour créer un menu.

    Par contre ta troisième remarque me semble assez intéressante: Je me suis contenté de faire un copier coller, à peu de chose près, du tutoriel.
    Ma page d’ enregistrement est bien page_login3.php, avatar de registration.php, et page_login1,2,… . Ah non on s’ arrête à trois. J’ ai fait des tests avec différentes versions qui conduisaient toutes aux même erreurs fatales.
    mais, il y a une phrase que je n’ ai pas du tout, mais alors là pas du tout, c’ est: require_once( ABSPATH . WPINC . ‘/registration.php’ )
    Plus exactement je me dis qu’ il exige une fois (sans être Bruxellois), un chemin absolu, con-caténé (ne pas confondre avec con-cat-et-ner) à un bidule WPINC et au fichier registration.php.
    juste pour voir, j’ ai remplacé le « registration » par « page_login3 », mais le résultat est le même.

    Si c’est cela, il manque l’inclusion des définitions des fichiers de WordPress te permettant d’appeler les define et autres focntions.

    met un require_once(‘./wp-load.php’); en début de fichier pour les avoir.

    Je veux bien le faire et, même si ce n’ est pas vraiment dans ma nature, t’ obéir aveuglément, mais ton incantation à toi, m’ est plus hermétique que du gaélique, oh grand druide Panoramix.

    Cet après midi, j’ ai répondu un peu vite. La construction du site me prends (beaucoup) plus de temps que prévu, j’ ai une expo qui se profile le mois prochain et j’ ai mis un livre en chantier. Donc moins de temps à consacrer aux problèmes de codage. Donc parfois je vais un peu vite. En faisant une prière.

    Ah, et un dernier détail: en tant qu’ autodidacte récent, j’ ignore comment coder proprement.

    #796467
    Guy
    Participant
    Maître WordPress
    14817 contributions

    Le forum joue des tours, toute la première partie de ma réponse est donc à ignorer. J’aurai du m’en douter puisque sur le site, le menu s’affiche correctement. Passons à la seconde partie.

    C’est assez simple, tu appelles la page pour qu’elle s’exécute directement, or ta première instruction comporte des définitions de constantes de WordPress.
    Le serveur ne connait que PHP, ses constantes et fonctions, il faut donc lui demander de charger les définitions et fonctions de WordPress avant de pouvoir les utiliser. C’est ici qu’intervient le require_once(‘./wp-load.php’); que tu dois placer avant tout appel spécifique à WordPress.

    /* Load registration file. */
    require_once(‘./wp-load.php’);
    require_once( ABSPATH . WPINC . ‘/registration.php’ );

    il te faudra probablement adapter le chemin d’accès à wp-load.php en fonction de l’endroit où tu l’appelles. ex : require_once(‘../../../wp-load.php’);

    #796468
    Gueblo
    Participant
    Maître WordPress
    1058 contributions

    on doit faire quoi pour signaler le mauvais fonctionnement des balises code
    parce que là faut avouer que c’est pas très sexy

    #796469
    wasicu
    Membre
    Maître WordPress
    2752 contributions

    @ Gueblo : Le problème est connu, il parait qu’il devrait y avoir un nouveau forum dans… … … … … nobody knows

    #796470
    Guy
    Participant
    Maître WordPress
    14817 contributions

    @gueblo et wasicu : j’ai écrit dans le courrier des lecteurs pour le signaler, fge l’ignorait, il transmet à qui de droit.

    #796471
    ombres-et-lumieres
    Membre
    Chevalier WordPress
    147 contributions

    @guy: voilà, j’ ai suivi tes recommandations et cela marche, à un détail près: après « clic » sur le bouton, je me retrouve sur une page affichant « vous êtes connecté », au lieu de la page sur laquelle je me trouvais avant de cliquer sur le lien « se connecter »: cela signifie que j’ ai donc fait du surplace puisque ce sont les deux branches d’ une condition.
    J’ utilise wp_login_form( $args ) et il y a un paramètre de redirection, ‘redirect’ => site_url( $_SERVER ), mais je ne vois pas exactement comment l’ utiliser. Est-ce que le javascript historique(-1) fonctionnerait?

6 sujets de 16 à 21 (sur un total de 21)
  • Le forum ‘Utilisation spécifique de WordPress’ est fermé à de nouveaux sujets et réponses.