[ 質問者返信待ち ] VK Post Date Search Proで日付検索使用時に、チェックボックスで「今日より後」を指定したい

VWSとは フォーラム VK Filter Search Pro [ 質問者返信待ち ] VK Post Date Search Proで日付検索使用時に、チェックボックスで「今日より後」を指定したい

[ 質問者返信待ち ] VK Post Date Search Proで日付検索使用時に、チェックボックスで「今日より後」を指定したい

2件の投稿を表示中 - 1 - 2件目 (全2件中)
  • 投稿者
    投稿
  • #112920

    絵麻尾上
    参加者

    ■ WordPress のバージョン
    6.8.2

    ■ テーマ・プラグインは全て最新版で確認してください。
    確認しました。

    ■ テーマの種類
    その他

    ■ プラグインの種類・バージョン
    テーマ:Swell バージョン: 2.15.0
    プラグイン:VK Filter Search Pro バージョン 2.17.0.0

    ■ 期待する動作
    イベント紹介サイトを制作中です。

    VK Filter Search Pro → VK Post Date Search Proを使用して日付検索を実装しています。

    従来の検索では
    「予約投稿を無効化する投稿タイプ」個所をONにすると、未来の日付の投稿も表示されるようになり
    フォームのカレンダーで日付を検索して範囲指定ができるようになりますが、
    そこまでの検索は必要なく「投稿日が今日以降(イベントが終了していない)」だけチェックボックス等でチェックして検索できるようにしたいです。

    このような場合の実装方法はありますでしょうか?

    ■ 自分で試した事
    今あるプラグインの機能の検索やフォーラムのログは探して閲覧しましたが
    該当カスタマイズが見つけられずにいます。

    ■ 症状が発生するブラウザ
    全て

    ■ 実際の症状
    なし


    該当URL : https://*********

    ※該当URLはフォーラムライセンスが有効のユーザーにのみ表示されます

    #112930

    石川@Vektor,Inc.
    キーマスター

    弊社製品のご利用ありがとうございます。株式会社ベクトルの石川と申します。

    > フォームのカレンダーで日付を検索して範囲指定ができるようになりますが、

    一応「指定日以降」の指定はできるのですが、チェック形式の方がよろしいでしょうか?

    確かに機能としてあると便利にも感じますが、実装するとなると設定画面が複雑化するので、
    需要と使いやすさのバランスも踏まえてどうしたものか悩ましいところです。

    あとは、例えば

    1. 「イベントステータス」というカスタムタクソノミーを作成して
    2. イベントステータスに「未開催」「開催済」というターム(あるいは未開催のみ)を登録
    3. VK Taxonomy Search Pro ブロックを配置して チェックボックス 形式で表示

    という形で代替する事は可能です。

    とは言え、イベント開催後に手動でタームを切り替えるのは手間なので子テーマのfunctions.phpかカスタマイズ用のプラグイン(↓参照)に

    WordPress カスタマイズ用 独自プラグインの作成

    // スケジュールイベントを登録
    if ( ! wp_next_scheduled( 'my_daily_event_status_check' ) ) {
        wp_schedule_event( time(), 'daily', 'my_daily_event_status_check' );
    }
    
    add_action( 'my_daily_event_status_check', 'my_update_past_events_status' );
    
    function my_update_past_events_status() {
        global $wpdb;
        $today = date( 'Y-m-d H:i:s' );
    
        // 今日より前に公開された event 投稿を取得
        $posts = get_posts( [
            'post_type'      => 'event',
            'posts_per_page' => -1,
            'date_query'     => [
                [
                    'before' => $today,
                    'inclusive' => false,
                ],
            ],
            'tax_query' => [
                [
                    'taxonomy' => 'event-status',
                    'field'    => 'slug',
                    'terms'    => 'event-done',
                    'operator' => 'NOT IN',
                ],
            ],
        ] );
    
        foreach ( $posts as $post ) {
            wp_set_post_terms( $post->ID, 'event-done', 'event-status', true );
        }
    }
    

    とかけば自動化する事が可能です。

    ※ 冒頭記載の通り、一応現状でも日付指定でそれ以降の投稿に絞り込む事はできるのですが、今日以降の投稿だけにチェックボックスで絞り込む機能あった方が良いですかね…?
    一応記載のような代替手段はあるのと、設定項目が複雑になって使いにくくなるかなという気もしています。

    他の方もご意見お待ちしております!

    Attachments:
    You must be logged in to view attached files.
2件の投稿を表示中 - 1 - 2件目 (全2件中)
  • このトピックに返信するにはログインが必要です。