ユーザーアクティビティに関する情報を取得するループを作成しています。コードは著者ページにあり、私がしたいのは現在の著者IDを取得することです。そのため、ユーザーがどの著者ページにいるかに基づいて、その著者のIDを取得します。
以下を参照してください。AUTHOR-IDを現在の著者のIDにする必要があります。
<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>
これで試してください:
<?php $author_id=$post->post_author; ?>
現在の著者IDが表示されます。
または、これはあなたにもっと役立ちます:
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 );
ありがとう。
著者アーカイブでは、次のものが著者IDを取得します。
$author_ID = get_query_var('author');
これにより、より多くの情報が得られます。
$pageobj = get_queried_object();
http://codex.wordpress.org/Function_Reference/get_query_var
http://codex.wordpress.org/Function_Reference/get_queried_object
これを試して
global $wp_query;
$thePostID = $wp_query->post->ID;
$postdata = get_postdata($thePostID);
$authorID = $postdata['Author ID'];
またはこのようなもの
<?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 ); ?>