WP CodexとStackExchangeを検索していくつか手がかりを得ましたが、このクエリが機能しているとは言えません。展覧会の開始日をexstart-date、終了日をexend-dateとしたY-m-d形式で、各展覧会に関連付けられた2つのカスタムフィールドがあります。
今後の展示や過去の展示を簡単に表示することはできますが、現在の展示を表示するmeta_query権を取得できません(開始日が今日以下、終了日が今日以上)。以下のコードはページに何も表示しません。助けて?
$paged = ( get_query_var('paged') ) ? get_query_var('paged') : 1;
$today = date('Y-m-d', strtotime('-6 hours'));
query_posts(array(
'post_type' => 'exhibitions',
'posts_per_page' => 6,
'paged' => $paged,
'orderby' => 'title',
'order' => 'DESC',
'meta_query'=>array(
'relation'=>'AND',
array(
'key' => 'exstart-date',
'value' => $today,
'compare' => '<=',
'type' => 'CHAR'
),
array(
'key' => 'exend-date',
'value' => $today,
'compare' => '>=',
'type' => 'CHAR'
)
)
));
if (have_posts()) :
while (have_posts()) : the_post();
これは私がその作品で終わったコードです。私はそれがMindshare StudiosのDamian Taggartに見せたとき、彼が私がquery_postsの代わりにWP_Queryを使うべきであると言ったことに気づいたので、私は質問がループの中にあったことを述べたべきです。すべての必要な情報を持たずに私を助けようとしてくれたMiloらに感謝します。
<?php
$paged = ( get_query_var('paged') ) ? get_query_var('paged') : 1;
$today = date('Y-m-d', strtotime('-6 hours'));
$myquery = new WP_Query(array(
'post_type' => 'exhibitions',
'posts_per_page' => 6,
'paged' => $paged,
'orderby' => 'title',
'order' => 'ASC',
'meta_query'=>array(
'relation'=>'AND',
array(
'key' => 'exstart-date',
'value' => $today,
'compare' => '<=',
'type' => 'CHAR'
),
array(
'key' => 'exend-date',
'value' => $today,
'compare' => '>=',
'type' => 'CHAR'
)
)
));
if ($myquery->have_posts()) :
while ($myquery->have_posts()) : $myquery->the_post();
?>