0

カスタム注文の投稿があり、管理メニューのリスト ビュー (選択ドロップ) に追加のフィルターを実装したいと考えています。

私はこれを何時間もいじっていましたが、解決策を見つけることができませんでした。いくつかのメタキーと値で投稿をフィルタリングしたいのですが、投稿日でこれがこの件で使用しているコードです

add_filter( 'parse_query', 'order_posts_filter' );

function order_posts_filter( $query ){
    global $pagenow,$wpdb;
    $type = 'post';
    if (isset($_GET['post_type'])) {
        $type = $_GET['post_type'];
    }
    if ( 'orders' == $type && is_admin() && $pagenow=='edit.php' && isset($_GET['ADMIN_FILTER_FIELD_VALUE']) && $_GET['ADMIN_FILTER_FIELD_VALUE'] != '') {
        $query->query_vars['post_date'] = $_GET['ADMIN_FILTER_FIELD_VALUE'];
    }
    if ( 'orders' == $type && is_admin() && $pagenow=='edit.php' && isset($_GET['ADMIN_FILTER_STATUS_VALUE']) && $_GET['ADMIN_FILTER_STATUS_VALUE'] != '') {
        $query->query_vars['meta_key'] = 'order_status';
        $query->query_vars['meta_value'] = $_GET['ADMIN_FILTER_STATUS_VALUE'];
    }
    return $query;
}

ここで何が間違っていますか?私の $_GET パラメータは期待どおりに機能しており、選択ボックスから関連データを取得しています。

ありがとう

4

1 に答える 1