web-dev-qa-db-fra.com

Obtenez l'ID de l'auteur d'une publication dans wordpress

Je crée une boucle où il tire des informations sur l'activité d'un utilisateur. le code est sur la page de l'auteur et ce que je veux, c'est obtenir l'ID de l'auteur actuel, donc en fonction de la page de l'auteur, l'utilisateur récupérera l'ID de cet auteur.

Voir ci-dessous, je voudrais que AUTHOR-ID soit l'ID de l'auteur actuel.

<script type="text/javascript">
                            var pieData = [
                            <?php

                            $user_id = AUTHOR-ID;

                            /* Get all categories */
                            $Rand = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f');


                            $categories = get_terms( 'category', 'orderby=count&hide_empty=0' );

                            /* Loop for each category to count the posts of the user */
                            foreach($categories as $category)
                            {
                            $color = '#'.$Rand[rand(0,15)].$Rand[rand(0,15)].$Rand[rand(0,15)].$Rand[rand(0,15)].$Rand[rand(0,15)].$Rand[rand(0,15)];
                               $cat_name = $category->name;
                               $cat_id = $category->term_id;
                               $post_count = count(get_posts("cat=$cat_id&post_author=$user_id"));

                               echo "

                                            {
                                                value: ".$post_count.",
                                                color:'".$color."',
                                                label: ".$user_id."
                                            },";

                            }
                            ?>
                            ]
                            var myPie = new Chart(document.getElementById("piec").getContext("2d")).Pie(pieData);
                        </script>
19
Zackskeeter

Essayez avec ceci:

<?php $author_id=$post->post_author; ?>

il vous donnera l'identifiant de l'auteur actuel.

ou celui-ci vous aidera davantage:

global $current_user;
get_currentuserinfo();                      

$args = array(
    'author'        =>  $current_user->ID, // I could also use $user_ID, right?        
    );

// get his posts 'ASC'
$current_user_posts = get_posts( $args );

Merci.

20
Krunal Shah

<?php the_author_meta( 'ID' ); ?>

C'est probablement mieux.

Réf: the_author_meta

14
bryceadams

Sur une archive d'auteur, les éléments suivants obtiendront l'ID de l'auteur:

$author_ID = get_query_var('author');

Cela vous donnera beaucoup plus d'informations:

$pageobj = get_queried_object();

Référence:

http://codex.wordpress.org/Function_Reference/get_query_var
http://codex.wordpress.org/Function_Reference/get_queried_object

2
s_ha_dum

Essaye ça

global $wp_query;
$thePostID = $wp_query->post->ID;
$postdata = get_postdata($thePostID);
$authorID = $postdata['Author ID'];

ou quelque chose comme ça

<?php $author_id=$post->post_author; ?>
<img src="<?php echo the_author_meta( 'avatar' , $author_id ); ?> " width="140" height="140" class="avatar" alt="<?php echo the_author_meta( 'display_name' , $author_id ); ?>" />
<?php echo the_author_meta( 'user_nicename' , $author_id ); ?> 
0
Vaibs_Cool