最後の投稿画像を背景にして、リスト内のすべてのユーザーを表示する新しいWebサイトで古いコードを再利用しています。これはすべてうまくいきます(get_users_of_blogは廃止予定ですが、get_usersを使用するとコードが壊れます)。
<?php
$blogusers = get_users_of_blog();
if ($blogusers) {
foreach ($blogusers as $bloguser) {
$args = array(
'author' => $bloguser->user_id,
'showposts' => 1,
'caller_get_posts' => 1
);
$my_query = new WP_Query($args);
if( $my_query->have_posts() ) {
while ($my_query->have_posts()) : $my_query->the_post(); ?>
...........
<?php endwhile;
}
}
}
?>
重要なのは、名前順に並べることができず、リストから作者を除外することができないということです。私はこれをやってみました
$blogusers = get_users_of_blog(array('role' => 'editors', 'orderby => ID));
しかし、これはやっかいなことではありません。誰でも?ありがとうございました!
はい、get_users_of_blog()
関数は推奨されていません。 get_users()
を使用した後でコードが壊れるのは->user_id
の部分です。代わりに->ID
を使用してください。
$blogusers = get_users();
if ($blogusers) {
foreach ($blogusers as $bloguser) {
$args = array(
'author' => $bloguser->ID,
'showposts' => 1,
);
$my_query = new WP_Query($args);
if( $my_query->have_posts() ) {
while ($my_query->have_posts()) : $my_query->the_post(); ?>
...........
<?php endwhile;
}
}
}
マルチサイトを利用している場合は、blog_id
のget_users
引数をあなたのブログのIDに設定する必要があります。
さて、著者を除外することについて。 WP_Query()
の 作者パラメータ を見ると、作者IDの配列を受け付けるauthor__not_in
引数があります。そのため、クエリからtest
ロールを除外するには、get_users()
のrole__in
またはrole
引数をtest
に設定してから、その結果をWP_Query()
で使用します。あなたは正確な詳細を提供しなかったので私はあなたが何を見ているのか正確にはわかりません、しかしこれらはトリックをするべきです。