Ecriture Plugin Admin avec plusieurs sous menu, plusieurs écrans

  • Statut : non résolu
9 sujets de 1 à 9 (sur un total de 9)
  • Auteur
    Messages
  • #449500
    arena
    Participant
    Maître WordPress
    844 contributions

    Bonjour,

    Ma configuration WP actuelle
    – Version 2.0 :
    – perso, sur la base de plaintxtBlog :
    – WP Db Back up, Chenpress, Simplepie (appel réécrit), etc … :
    – OVH :

    [bEcriture d’un plugin Admin :[/b]

    Bonjour,

    Pour mes besoins persos, je suis en train de développer un plugin baptisé WAgenda.
    Ce plugin permet de saisir un événement comme un commentaire.
    Pour l’instant tout va bien. Vous pouvez aller voir sur http://www.nogent94.com, sous le calendrier à droite il y a ‘renseigner l’agenda’. Allez y, rien ne sera publié car comme les commentaires, je veux “modérer” les saisies de type événement.

    Sous Admin, j’ai commencé à regarder la cinématique des commentaires et de la modération.
    En m’inspirant largement de ces fichiers php, j’arrive sans problème à afficher pour mes événements l’équivalent des écrans commentaires : En attente de Modération, Edition d’un commentaire.

    Je bloque toutefois sur un problème technique.
    Tous les fichiers php gérant les commentaires sous admin sont sous wp-admin. C’est le répertoire d’execution et les différents formulaires n’ont aucun problème à se rappeler eux mêmes (tag form, attribut action).

    Pour mon plugin Agenda, le cas est un peu différent. mes fichiers php sont dans un répertoire de mon plugin Agenda. J’arrive bien à afficher les écrans modifiés à partir des sous menus admin créés, (certes avec des url à rallonge du type :

    http://127.0.0.1/wp/wp-admin/edit.php?page=wp-content/plugins/WAgenda/php/event.php&action=editevent&event=7

    mais ca marche pour l’affichage.
    Je BLOQUE aujourd’hui sur l’attribut ‘action’ de mes formulaires car il m’est impossible d’appeler le fichier placé dans un dossier type plugin, le serveur allant chercher le fichier dans le répertoire courant.

    Il se fait tard, mais si quelqu’un à une solution, je suis preneur.

    Merci à tous

    #585336
    AmO
    Participant
    Maître WordPress
    4452 contributions
    #585337
    Martin
    Membre
    Chevalier WordPress
    484 contributions

    En tout cas, j’installerai ton plugin dès sa mise en ligne ! Trop fort !😗😗:happy:

    #585338
    arena
    Participant
    Maître WordPress
    844 contributions

    Merci pour les encouragements. la saisie fonctionne bien sous firefox mais j’ai du mal pour IE …
    L’affichage du calendrier, c’est de l’ajax.

    Merci pour la réponse, mais cela ne répond pas à mon problème. WordPress permet d’ajouter un formulaire à partir d’un menu ou sous menu qui boucle sur lui même,

    lorsque j’appelle l’écran de mon item de menu (rajouté par la fonction add_… ), j’affiche un formulaire.
    tag html < form action=??

    deux cas de figures,
    je mets action=”” et lors de la validation du formulaire je me retrouve sous wp-admin/edit.php puisque je suis arrivé sur ce formulaire avec l’url suivante : wp-admin/edit.php?page=’le path de mon plugin’/toto.php&option=xx

    je mets action=”toto.php” mais là je plante puisque toto.php n’est pas dans wp-admin.

    il me reste deux solutions :

    1) A la validation du formulaire, faire une redirection avec window.location.href= faut que je teste ça!

    2) créer un fichier php d’aiguillage que je mets sous wp-admin … ca marchera pas

    A priori je ne vois pas d’autres solutions

    #585339
    LH
    Membre
    Chevalier WordPress
    372 contributions
    arena wrote:

    je mets action=”toto.php” mais là je plante puisque toto.php n’est pas dans wp-admin.

    il me reste deux solutions :

    1) A la validation du formulaire, faire une redirection avec window.location.href= faut que je teste ça!

    2) créer un fichier php d’aiguillage que je mets sous wp-admin … ca marchera pas

    A priori je ne vois pas d’autres solutions

    Salut,

    Peut-être que je n’ai pas compris le problème, mais pourquoi tu ne mets pas l’URL complète pour trouver toto.php ? Par exemple: action=”http://monsite.com/mon_plugin/toto.php&#8221;

    #585340
    arena
    Participant
    Maître WordPress
    844 contributions

    Eh bien si je fait cela, je ne passe plus par admin et je n’ai plus de menu admin …
    l’option aiguillage php ne marche pas pour les meme raisons.

    exemple plus concret, j’ai dupliquer le petit formulaire de recherche sur ma page Evenements (idem que Commentaires).

    Lorsque je fais une recherche, l’url que je devrais obtenir est du type (mise sur plusieurs lignes pour pas etre tronqué à l’affichage).

    http://127.0.0.1/wp/wp-admin/edit.php?
    page=WAgenda/php/edit-events.php
    &s=zaza&submit=Recherche&mode=view

    oui c’est long mais ca marche quand je la tape dans mon browser préféré.

    #585341
    LH
    Membre
    Chevalier WordPress
    372 contributions
    arena wrote:
    Eh bien si je fait cela, je ne passe plus par admin et je n’ai plus de menu admin …

    Salut,

    J’avais en tête que tu pouvais peut-être faire comme dans le fichier wp-admin/post.php
    <?php
    require_once(‘admin.php’);

    C’est dans le fichier post.php que le fichier admin.php est appelé pour installer le menu admin.

    #585342
    arena
    Participant
    Maître WordPress
    844 contributions

    je suis parti sur javascript mais je garde ton option sous le coude.
    merci.

    #585343
    arena
    Participant
    Maître WordPress
    844 contributions

    Bon j’ai trouvé la solution. Sur mon pc en local ca marche impecc.
    Le mot magique javascript est : self.location=

    J’ai livré sur mon hébergeur, et là d’autres problèmes apparaissent.

    Si quelqu’un a décortiqué la fonction check_admin_referer, je suis preneur.

    A l’avance merci.

9 sujets de 1 à 9 (sur un total de 9)
  • Vous devez être connecté pour répondre à ce sujet.