特定のページにリストされている一連のイベントがあります。各イベントは投稿です。私はそれらが発生する順序で表示する必要があります。投稿日の順番ではありません。だから、私はTheDateと呼ばれるカスタムフィールドを作成し、それぞれのために、この形式で日付で入力しました:20110306.WordPress:カスタム欄でWhere句を使用する
その後、私はこのように私のクエリを書いた:
query_posts(array ('cat' => '4', 'posts_per_page' => -1, 'orderby' => 'meta_value_num',
'meta_key' => 'TheDate', 'order' => 'ASC'));
は完璧に動作して表示します正しい順序でイベントを送信します。しかし、今日からの日付のみを表示することも忘れないでください。私はそれが通過した日付を表示したくありません。これを行う方法は、「フィルタ」を使用しているようです。私はこれを試しましたが、うまくいきません。
$todaysdate = date('Ymd');
query_posts(array ('cat' => '4', 'posts_per_page' => -1, 'orderby' => 'meta_value_num',
'meta_key' => 'TheDate', 'order' => 'ASC'));
function filter_where($where = '') {
$where .= "meta_value_num >= $todaysdate";
return $where;
}
add_filter('posts_where', 'filter_where');
私はそれが私がこのフィルタを使用している場所の問題だ把握、私はおそらく間違った場所でそれを持っています。あるいは、フィルターそのものが悪いかもしれません。どんな助けや指導も大歓迎です。ありがとう!
万一「> =」こと「=>」連結またはdoesnの」あなたの$でそれは問題なの? –