2010-11-23 6 views
0

私の各投稿には、ユーザIDを持つ配列であるmeta_keyがあります。配列meta_keyに特定のユーザーIDが含まれている投稿のみを表示する方法はありますか?Wordpress:the_loopの投稿をスキップするか、配列meta_keysをクエリ

このようなフィルタをクエリに適用する方法はありません。ループ内の投稿をスキップすると、機能が十分なポストを表示しません。

+0

このオプションをお試しください。それらのいずれかがあなたの答えとしてマークするのに役立つならば! :) –

答えて

1

ループ内の投稿をスキップすることはできますが、すべての投稿を実行して表示する投稿の数に達するとループを停止/中断するだけです。

get_posts(「numberposts = -1」)制限を削除 - http://codex.wordpress.org/Template_Tags/get_posts この種のことは、それはあなたがそれを使用したいかによって異なりようがページングを壊す可能性があります。

$ meta_keyと$ meta_value get_postsパラメータを試すこともできますが、独自のカスタムフィールドに個々の値として各ユーザーIDがある場合にのみ有効です。

ようなので:

キー:ユーザーID、値:3

キー:ユーザーID、値:5

キー:ユーザーID、値:7

キー:ユーザーID、値: 8

Wordpressの組み込みユーザーの役割が優れているようなものです。おそらくあなたの目標は何かを説明するでしょうか?

+0

+1あなたの目標を説明するために、それは私たちのためにもっと簡単になります! – TheDeadMedic

+0

私はhttp://japanlike.com/にdiggのようなWPベースのウェブサイトを持っています。ユーザがストーリーに投票するたびに、自分のIDが配列meta_keyに保存されます。 1人のユーザーが好きなすべてのストーリーを表示するページを作りたいと思います。 –

0

このようなことを試しましたか?

$temp_store_query = $wp_query; 
$wp_query = NULL; 
$quer_y = 'meta_key=your_meta_key&meta_value=some_user_ID'; 
$wp_query = new WP_Query($quer_y); 

while($wp_query->have_posts()) : $wp_query->the_post(); 
// ...do whatever is needed here 
endwhile; 

$wp_query = NULL; 
$wp_query = $temp_store_query; 
+0

私の場合、your_meta_keyは配列なので、上のコードではうまくいきません。 –

0

あなたは(パラメータを含め使用することができる)あなたはこの配列を爆発し、ループ内のすべてのこの記事を表示ので、彼が気に入って記事を保存するuser_metaを作成してみてください。

関連する問題