私は 投稿の取得 プラグインを使用して投稿の種類が "project"の投稿を一覧表示しています。年(例:2006)と州(例:完了)の2つのカスタムフィールドでリストを絞り込みます。プラグインのmeta_query
引数にget_post
を追加し、ショートコードを試しました。
[get_posts post_type="project" meta_query="array(array('key' => 'state', 'value' =>
'Completed'),array('key' => 'year','value' => '2006'))" suppress_filters="false"]
meta_key
とmeta_value
を使って、 "state"と "year"の両方を独自に機能させることはできますが、これは機能しません。
誰かが私を正しい方向に向けることができますか?
更新されていないプラグインの他に、meta_query引数が文字列として評価されるため、これは機能しません。
array(3) {
["post_type"] => string(7) "project"
["meta_query"] => string(96) "array(array('key' => 'state', 'value' =>
'Completed'),array('key' => 'year','value' => '2006'))"
["suppress_filters"] => string(5) "false"
}
カスタムページテンプレート を作成することをお勧めします。ここでは、必要なmeta_queryを使用してget_posts()を直接呼び出します。
実際の投稿一覧を処理するコードをコピーする必要があります。
私は、プラグインが新しいクエリ引数、特にこの場合はmeta_query
引数をサポートするように更新されたとは思いません。
プラグインのページには互換性の最新の一覧3.0.5があり、私が正しく覚えていればmeta_query
は3.1で導入されましたdサポートはまだ利用できません。
私は間違っているかもしれません、ただ点をつないでください..
プラグインはshortcode_atts
を使って、受け入れられる引数のリストを制限します。
http://plugins.trac.wordpress.org/browser/nurelm-get-posts/tags/0.3/get-posts.php#L29
meta_query
はそのリストにありません。私はプラグインを忘れるか、メタクエリを可能にするためにそれを更新するように作者に依頼することをお勧めします。