ページ読み込み時に WooCommerce フィルターの値を事前設定する(woof_get_request_data)
質問:特定のタクソノミーでロード時にデフォルトでフィルタリングされた商品を表示することは可能ですか?
回答:はい、以下の手順を実行してください:
- 現在のテーマファイル functions.php を開きます
- ファイルの末尾に次のコードを追加します
if (is_front_page()) { add_filter('woof_get_request_data', 'my_woof_get_request_data'); } function my_woof_get_request_data($request) { $request['product_cat'] = 'music'; //$request['product_cat']='music,posters'; return $request; } - さらにウェルカムタクソノミーが必要な場合はカンマを使用してください
これは単なる例示的な質問です。ご自身のロジックに従い、検索リクエストに任意のデータをいつでも追加できます…
注意:is_front_page() 関数はAJAXモードでは動作しません!
例 検索結果に常に「在庫あり商品のみ」を表示する方法:
add_filter('woof_get_request_data', 'my_woof_get_request_data');
function my_woof_get_request_data($data){
$data['stock']='instock';
return $data;
}