recuperation de l’id du propriétaire de la page (Créer un compte)

  • WordPress :5.4
  • Statut : non résolu
2 sujets de 1 à 2 (sur un total de 2)
  • Auteur
    Messages
  • #2355746
    grosfaignan
    Participant
    Initié WordPress
    42 contributions

    Bonjour,

    la fonction get_the_author_meta(‘ID’) pour récupérer l’ID du propriétaire du profil visité donnant parfois de mauvais résultats en dehors de la boucle ou lorsque l’auteur en question n’a écrit aucun post, j’utilise cette fonction de mon cru : qui semble régler le problème :

     

    function get_the_owner()
            {
                if(get_the_author_meta('ID'))
                {
                    $owner_id=get_the_author_meta('ID');
                    var_dump('author_meta');
                    var_dump(get_user_by('ID', $owner_id)->data->user_nicename);
                }
                elseif (get_queried_object()->ID) {
                    $owner_id=get_queried_object()->ID;
                    var_dump('queired_object');
                    var_dump(get_user_by('ID', $owner_id)->data->user_nicename);
                }
                elseif ( 
                    (!get_the_author_meta('ID') || isempty(get_the_author_meta('ID') )
                    &&
                    (!get_queried_object()->ID || isempty(get_queried_object()->ID)))
                    ) {
    
                    global $wp_query;
                    $owner_id=$wp_query->get_queried_object()->data->ID;
                    var_dump('global wp_query');
                    var_dump(get_user_by('ID', $owner_id)->data->user_nicename);
                }
                return $owner_id;
            }

     

    qu’en pensez vous ?

    quelle sont vos pratiques ?

    d’autres idées ?

    cdt

    #2355765
    ferman
    Participant
    Maître WordPress
    2980 contributions

    Bonjour,

    Je ne sais pas exactement ce que vous voulez faire mais d’après ce que je vois:

    La fonction en entier donne bien le nom et l’ID de l’auteur.

    La fonction moins le premier if donne uniquement l’ID de la page en cours.

    La fonction moins les deux premiers if donne une erreur parce-que “isempty” n’est pas valide. En remplaçant par “empty” (valide) me résultat est vide.

    Je n’ai pas de pratique particulière (je n’ai pas ce genre de problème).

     

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