Elementor商品グリッドをフィルタリング可能にする(pre_get_postsスニペット)
Elementorで生成されたフィルタリング可能なWooCommerce商品を作成するには、functions.phpファイルに次のコードを追加してください:
add_action('pre_get_posts', function ($query) {
if (defined('ELEMENTOR_VERSION')) {
if (is_object($query) AND isset($query->query['post_type'])) {
if ($query->query['post_type'] === 'product' /* AND is_page(__YOUR_PAGE_ID__)*/) {
global $WOOF;
if (is_object($WOOF) AND !empty(woof()->get_request_data())) {
woof()->woof_products_ids_prediction(true);
$query->query_vars['post__in'] = $_REQUEST['woof_wp_query_ids'];
}
}
}
}
return $query;
});
WOOFフィルタリングを特定のページでのみ使用したい場合は、コードis_page(__YOUR_PAGE_ID__)をそのまま残してください。
関連情報:ページビルダーとカスタムテンプレートをフィルタリング可能にする