【機能追加要望】VK Filter Search Proのプルダウンに最初から指定したカテゴリー(タグ)を表示させたい、またはチェックボックス等に指定したカテゴリー(タグ)のみ表示させたい

VWSとは フォーラム その他 【機能追加要望】VK Filter Search Proのプルダウンに最初から指定したカテゴリー(タグ)を表示させたい、またはチェックボックス等に指定したカテゴリー(タグ)のみ表示させたい

【機能追加要望】VK Filter Search Proのプルダウンに最初から指定したカテゴリー(タグ)を表示させたい、またはチェックボックス等に指定したカテゴリー(タグ)のみ表示させたい

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

    藤中宏充
    参加者

    ■ WordPress のバージョン
    5.9.3

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

    ■ テーマの種類
    その他

    ■ 関連しそうなプラグインを一つづつ停止して症状が改善するか確認してください。
    確認しました。

    ■ プラグインの種類・バージョン
    バージョン 1.8.1

    ■ 期待する動作
    1)検索の範囲をその都度、最初から指定したカテゴリーやタグに絞ることは出来ないでしょうか?
    例:不動産、求人と複数の検索ジャンルを扱っているサイトで不動産のページでは不動産の店舗カテゴリー(またはタグ)を検索対象にしたい。タクソノミーで不動産エリア、求人エリアとすれば選別することが出来ますが、タグで「東京・大阪・愛知」などとタグづけすると検索結果に不動産も求人も混ざって表示されてしまうため

    2)またはプルダウン、チェックボックス、ラジオボタン等で最初から指定したいカテゴリーまたはタグを選択した状態にしておくことは出来ないでしょうか?

    3)プルダウン、チェックボックス、ラジオボタンでは作成しているカテゴリーやタグがすべて表示されますが、表示したいカテゴリー(またはタグ)のみ表示させることは出来ないでしょうか?
    例:不動産の検索には駅近・駐車場有などのタグのみ表示したい、求人の検索には土日休み・交通費支給などのタグのみ表示したい

    使用しているテーマではカスタム投稿が検索結果に表示されないため、その代替案として標準投稿を使った絞り込み検索を考えています。(検索ジャンルが数種類あるため標準投稿でタクソノミーを使用するとタクソノミーが10個以上になるため極力作成したくありません)

    ■ 自分で試した事
    カスタマイズできないか調べてみましたが該当記事が見つからず、また自分の知識では自力でカスタマイズすることも不可能でした

    #64475

    うなこ
    モデレーター

    使用しているテーマではカスタム投稿が検索結果に表示されないため、その代替案として標準投稿を使った絞り込み検索を考えています。

    もうすこし詳しく聞いてもいいでしょうか。テーマは何をご利用でしょうか?

    #64476

    藤中宏充
    参加者

    テーマは「stork19」です。

    本来は、カスタム投稿で例で示したような不動産物件や求人情報など複数のカスタム投稿タイプを作成して、それぞれのタクソノミーの条件で検索させたかったのですが、カスタム投稿の記事は検索結果に反映されませんでした。

    標準投稿の記事作成画面でたくさんのタクソノミーが並ぶのは煩わしいので同じようにタクソノミーを生成するのは避けたいと考えています。

    解決策があれば教えて下さい。

    #64478

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

    WordPressの王道の構成として投稿の意味が違うものは投稿タイプをわけるべきなので、
    カテゴリーのドロップダウンの項目を操作するとかではなく、検索結果にカスタム投稿タイプを表示出来るようにする方がセオリーに沿った対応かと思います。

    カスタム投稿タイプが含まれないという事は stoke19 側で何か独自の処理を含めている可能性があるので、
    stoke19の開発元に、検索結果にカスタム投稿タイプの記事が表示されないような処理がされているのであれば、それを解除するカスタマイズの方法を一度問い合わせてみてください。

    #64488

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

    一応確認ですが、Filter Search の設定で、絞り込み対象を「投稿」だけにしているので、検索結果にカスタム投稿タイプが含まれないとかそういうオチではないですよね?

    Attachments:
    You must be logged in to view attached files.
    #64500

    突然の割り込み失礼いたします。

    STORK19開発会社に確認した内容をシェアします。

    ■検索対象の仕様について

    テーマの仕様として「投稿」のみを対象にしている

    ※固定ページやカスタム投稿は対象外

    ■カスタム投稿などを検索対象にするコード

    以下のコードを子テーマのfunctions.phpに記述することでカスタム投稿を検索対象にすることができます。
    ※事前にバックアップをお取りください。

    function stk_SearchFilter($query) {
      if (!is_admin() && $query->is_main_query() && $query->is_search()) {
        $query->set('post_type', 'any');
      }
    }
    add_filter('pre_get_posts', 'stk_SearchFilter');
    #64513

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

    かんたさん

    ありがとうございます。ただ、そのコードですと、「全部の投稿タイプ」に新規で指定しているので、
    Filter Search の設定と干渉して誤動作する可能性が結構あるのではないかなという印象です。

    もともと、stoke が add_action( ‘pre_get_posts’ で $query->set(‘post_type’, ‘post’); にしている所があるはずなので

    remove_action( ‘pre_get_posts’,

    で、stoke がしている post への限定を外すやり方の方が望ましいです。

    「any を上書き」するのではなく、 「post の指定を解除する」 方が事故がないと思います。

    が、 他社テーマなので stoke が add_action( ‘pre_get_posts’ でどんな書き方をしているのかコードが手元にないので不明なので、解除の仕方は僕ではわかりません…。

    #64524

    藤中宏充
    参加者

    かんた様

    情報ありがとうございます。
    こちらでも開発元に問い合わせたところ同じ回答をいただいています。
    ただ、そのコードをfunctions.php(code snippet)に記述するとエラーとなるため、石川様のご指摘も含めて再度開発元に問い合わせています。

    石川様

    絞り込み対象は、カスタム投稿を指定しています。(最初は気づきませんでしたが)

    #64525

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

    ちなみに

    function stk_SearchFilter($query) {
      if (!is_admin() && $query->is_main_query() && $query->is_search()) {
        $query->set('post_type', 'any');
      }
    }
    add_filter('pre_get_posts', 'stk_SearchFilter');

    pre_get_posts はアクションフックなので add_filter ではなく add_action( ‘pre_get_posts’ 〜 になるはずなので間違ってます。
    add_filter( だった場合は最後に return $query; しないといけないので、やっぱり間違っている

    おそらく

    function stk_SearchFilter($query) {
      if (!is_admin() && $query->is_main_query() && $query->is_search()) {
        $query->set('post_type', 'any');
      }
    }
    add_action('pre_get_posts', 'stk_SearchFilter');

    だと思いますが、これは全ての投稿タイプを含める という処理を「上書き追加」するので、VK Filter Search からの投稿タイプの絞り込みも効かなくなる可能性がある

    なので

    remove_action( 'pre_get_posts', 'stoke19 が 検索結果を post に限定する処理をしている関数名' );

    みたいな処理になると思います。

9件の投稿を表示中 - 1 - 9件目 (全9件中)
  • このトピックに返信するにはログインが必要です。