0

「在庫あり」のカスタム フィールド値と「_status」のカスタム フィールド キー名を使用して、Wordpress ページに投稿を表示しようとしています。

「_status」というカスタム フィールドのカスタム フィールド値が「在庫あり」の投稿を選択する以下のコード行を追加するにはどうすればよいですか?

    global $wp_query;

    $wp_query->set("orderby",'meta_value_num');
    $wp_query->set("meta_key",'inventory_number');
    $wp_query->set("order",'desc');
    $wp_query->set("category_name",'tape');
4

1 に答える 1

1

そのようにグローバル$wp_queryオブジェクトを変更しないでください。pre_get_postsそれがフックが存在する理由です。次に、カスタムを設定できますmeta_query

add_action('pre_get_posts', 'my_pre_get_posts');

function my_pre_get_posts($query)
{
  if ($query->is_main_query()) {

    $query->set('meta_query', array(array(
      'key' => '_status',
      'value' => 'in-stock',
      'compare' => 'LIKE'
    )));
  }
}
于 2013-05-18T02:11:11.423 に答える