これは方法としては少し奇妙に思えるかもしれません。
login_email
「 」というカスタム フィールドがある自分の wordpress Web サイトに投稿があります。
私のテーマファイルには、このクエリがあります...
$press = new WP_Query(array(
'posts_per_page' => -1,
'post_type' => 'download',
'post_status' => 'private',
'meta_query' => array(
array(
'key' => 'login_email',
'value' => $current_user->user_login,
'compare' => '='
)
)
));
login_email
これは、一致するカスタムフィールド値を持つ非公開投稿を取得するだけです$current_user->user_login
現在、login_email
カスタムフィールドにこの値があります...
josh@samplemail.uk.com
いいえ、私ができるようにしたいのは、このようにコンマで区切られたこのカスタムフィールドにさらに電子メールを追加することです...
josh@samplemail.uk.com, colin@samplemail.uk.com, jimbo@samplemail.uk.com
...そして、上記のクエリで、このリストから 1 つのメールを認識できるようにします。
たとえば、ユーザーcolin@samplemail.uk.com
がログインしている場合、colins の電子メールがこのカスタム フィールドに存在するため (josh と jimbo の電子メールと共に)、投稿がクエリで返されます。
これが何らかの意味を成すことを願っています。さらに詳しく説明する必要がある場合はお知らせください。
クエリの比較を変更する必要があるようです-しかし、これらは私が見つけることができる唯一のオプションです...
compare (string) - テストする演算子。可能な値は、'='、'!='、'>'、'>='、'<'、'<='、'LIKE'、'NOT LIKE'、'IN'、'NOT IN'、'BETWEEN' です。 '、'NOT BETWEEN'、'EXISTS' (WP >= 3.5 のみ)、および 'NOT EXISTS' (WP >= 3.5 のみ)。デフォルト値は「=」です。 ソース
...EXISTS をテストしましたが、投稿が返されません。
誰かが巧妙な修正またはアイデアを持っていますか?
ありがとうジョシュ