[ 質問者返信待ち ] VK Filter Search Pro『検索結果ページにこのフォームを表示』の挙動について
VWSとは › フォーラム › VK Filter Search Pro › [ 質問者返信待ち ] VK Filter Search Pro『検索結果ページにこのフォームを表示』の挙動について
[ 質問者返信待ち ] VK Filter Search Pro『検索結果ページにこのフォームを表示』の挙動について
- このトピックには11件の返信、3人の参加者があり、最後に石川@Vektor,Inc.により1年、 5ヶ月前に更新されました。
-
投稿者投稿
-
2023年1月24日 4:09 PM #73027
AndoAtsushi参加者■ WordPress のバージョン
6.1.1■ テーマ・プラグインは全て最新版で確認してください。
確認しました。■ テーマの種類
その他■ 関連しそうなプラグインを一つづつ停止して症状が改善するか確認してください。
確認しました。■ プラグインの種類・バージョン
– VK Filter Search Pro : Version 1.12.1■ 期待する動作
固定ページに埋め込んだVK Filter Search Proブロックの「検索結果ページにこのフォームを表示」をオンにした時、検索結果ページsearch.php
に検索フォームを表示したい。■ 自分で試した事
固定ページに埋め込んだVK Filter Search Proブロックの「検索結果ページにこのフォームを表示」をオンにしているが、検索結果ページsearch.php
に検索フォームが表示されません。検索ページへのリクエストのパラメータは以下のようになっていて、きちんと
search.php
にリクエストされています。/?post_type=products&vkfs_form_id=e4bcc6cc-7109-44d8-94df-af88425b9375&s=
プラグインのソースを確認したところ、
vk_filter_search
というoptionに「検索結果ページにこのフォームを表示」の情報が保存されるようですが、option値を確認したところdisplay_on_result
は空になっていました。`
wp option get vk_filter_search
array (
‘display_on_post_type_archive’ =>
array (
),
‘custom_fields’ =>
array (
0 => ‘_product_cash-back_value’,
1 => ‘product_total_valuation_value’,
2 => ‘product-search_source-line’,
3 => ‘product-search_batteries-capacity’,
),
‘display_on_result’ =>
array (
),
)
`
■ 症状が発生するブラウザ
Google Chrome Version 109.0.5414.87 (Official Build) (arm64)■ 実際の症状
固定ページの編集画面からのoption値の保存がうまくいっていないように思えるのですが、何か考えられることはありますか?2023年1月24日 4:19 PM #73030
DRILL LANCERモデレーターdisplay_on_result のオプション値はその投稿が保存されその後フォームが描画される途中で保存されます。
単にオプション値を変えただけではその値は保存されません。- この返信は1年、 10ヶ月前にDRILL LANCERが編集しました。
2023年1月24日 5:36 PM #73037
AndoAtsushi参加者VK_Filter_Search::search_result_form_content();がString(“”)なので検索結果ページにフォームが表示されないようです。
この関数の中ではoptionを参照しているようなのですが
option値がフォームの保存時にできて、フォームの表示・送信時に削除されているようです。
どうすれば検索結果にフォームを表示させることができますか?
2023年1月24日 5:44 PM #73038
DRILL LANCERモデレーターえーと使用しているテーマは何ですか?
lightning 系なら lightning_loop_before のアクションフックに引っ掛けています。2023年1月25日 2:44 PM #73068
AndoAtsushi参加者テーマはオリジナルです。
search.phpには以下のようなシンプルなコードだけ記述しています。
/* Start the Loop */
while ( have_posts() ) :
the_post();
get_template_part( ‘template-parts/content’, ‘search’ );
endwhile;
the_posts_navigation();the_post() -> loop_startアクション -> VK_Filter_Search::display_search_result_form_content() -> VK_Filter_Search ::search_result_form_content()
と呼ばれていることはデバッグしながら確認できたのですが、option値が空なのでform_contentが出力されないようでした。
何かヒントになりますでしょうか?
2023年1月25日 3:05 PM #73069
DRILL LANCERモデレーター- テーマが Lightning でプラグインが VK Filter Search Pro のみの場合
- テーマが オリジナルテーマでプラグインが VK Filter Search Pro のみの場合
上記で検証して見てください。(何かがオプション値の保存を妨害している可能性を疑います。)
ちなみに、下記フィルターフックを使って独自のアクションフックを登録すればその位置に表示されるようになります。
(loop_start だと検索結果が 0 件の場合表示されないので独自フックで出力しています。)
https://github.com/vektor-inc/vk-filter-search/blob/e33d437f63b729bd00996943f956ad23f7c29a66/inc/filter-search/config.php#L8-L24- この返信は1年、 10ヶ月前にDRILL LANCERが編集しました。
2023年1月28日 7:34 AM #73156いーしーかーわーでございますー。補足ですが、
1. 例えばテーマ名が “ando_san_theme” だったとして、 search.php に
do_action('ando_san_sup_fishing_osusumeyade');
みたいなアクションフックを配置
2. functions.php などに以下を追記add_filter( 'vkfs_theme_hook_array', function( $theme_hook_array ) { $theme_hook_array[] = array( 'ando_san_theme' => 'ando_san_sup_fishing_osusumeyade' ); return $theme_hook_array; } );
で表示されるか試してみてくださいー。
2023年1月28日 7:53 AM #73158
DRILL LANCERモデレーターoption値がフォームの保存時にできて、フォームの表示・送信時に削除されているようです。
そういった状況に陥ったことがないのでなんとも言えませんがサーバーの WAF とかが関係していそうな気がします。
2023年6月1日 11:54 AM #76139
AndoAtsushi参加者連絡が遅くなってすみません。
ブロックテーマではなかったので自作テーマで検索結果ページにウィジェットでVK Filter Search Proブロックを入れて表示されるようになりました。
Lightningのテーマを使っているサイトではそのようなことをせずに検索結果ページにVK Filter Search Proブロックが表示されるのですがどのようにすればクラシック同じようになりますでしょうか?2023年6月1日 12:39 PM #76144
DRILL LANCERモデレーター2023年6月1日 1:57 PM #76148そうですねー。こちらでいけるかと思います。
2023年6月1日 1:59 PM #76149なるほど、日本語URLが長すぎてアンカーリンクが効かないみたいですね…
1. 例えばテーマ名が “ando_san_theme” だったとして、 search.php に
do_action('ando_san_sup_fishing_osusumeyade');
みたいなアクションフックを配置
2. functions.php などに以下を追記add_filter( 'vkfs_theme_hook_array', function( $theme_hook_array ) { $theme_hook_array[] = array( 'ando_san_theme' => 'ando_san_sup_fishing_osusumeyade' ); return $theme_hook_array; } );
という感じで試してみてください。
よろしくお願いいたします! -
投稿者投稿
- このトピックに返信するにはログインが必要です。