質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

1回答

3996閲覧

WP_User_Queryにおけるユーザー取得で、複数のユーザー権限を指定したい

退会済みユーザー

退会済みユーザー

総合スコア0

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2018/01/05 03:37

WP_User_Queryを用いてユーザーを全件取得し、固定ページにライター一覧として一覧表示しています。
ここでユーザー権限によって表示・非表示を切り替える必要が出てきまして、具体的には**編集者(editor)と投稿者(author)**のみ表示したいです。

そこでWP_User_Queryのパラメータrolearray('editor', 'author');を渡しましたが、全て表示されなくなってしまいました。
恐らく、配列で渡すとその権限をどちらも持つユーザーを取得しに行くのかなーと思っています(システム上有り得ないですが)。

もちろん片方だけ指定すると、指定した権限を持つユーザーが正常に表示されます。
複数のユーザー権限を指定することはWP_User_Queryでは不可能なのでしょうか?

何かアイデアをお持ちの方や、ヒントだけで良いのでお聞かせください。

PHP

1<?php 2 $args = array( 3 'role' => array('editor', 'author'), 4 ); 5 $writers = new WP_User_Query($args); 6?> 7<? if (!empty($writers->results)) : ?> 8 <?php foreach ($writers->results as $writer) : ?> 9 // ライター表示のHTML 10 <?php endforeach; ?> 11<?php endif; ?>

補足

  • get_users()でも同じ結果でした。
  • ユーザーが1000件ほどあり、ページネーションを実装するので、全件取得した後にユーザー権限を見てif文で切り分けするのは出来れば避けたいです。
  • WordPress 4.9.1, PHP 7.0

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

'role__in' => array( 'editor', 'author' )で出来ます。

Class Reference/WP User Query 4.1 User Role Parameter
https://codex.wordpress.org/Class_Reference/WP_User_Query#User_Role_Parameter

投稿2018/01/05 04:50

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/01/05 05:03

完全に見落としてました。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問