概要
woocommerce_product_categories_widget_args フィルタは、WooCommerce の商品カテゴリウィジェットの引数を変更するために使用されます。このフィルタを使用することで、表示されるカテゴリの数や、表示方法のカスタマイズが可能です。具体的には以下のようなケースでよく使われます。
- 表示するカテゴリの数を変更する
- 特定のカテゴリを除外する
- 階層表示のカスタマイズ
- CSSクラスの変更
- カテゴリリンクの変更
- スタイルを適用するための属性の追加
構文
add_filter('woocommerce_product_categories_widget_args', 'custom_product_categories_widget_args');
パラメータ
$args: ウィジェットの引数を含む配列。
戻り値
$args: カスタマイズされた引数配列。
使用可能なプラグインWooCommerceのバージョン
- WooCommerce 2.0以降で使用可能です。
使用可能なワードプレスのバージョン
- WordPress 4.0以降で使用可能です。
この関数のアクションでの使用可能性
| アクション | 使用例 |
|---|---|
| mu_plugin_loaded | |
| registered_post_type | |
| plugins_loaded | |
| wp_roles_init | |
| setup_theme | |
| after_setup_theme | |
| set_current_user | |
| init | |
| register_sidebar | |
| wp_loaded | |
| send_headers | |
| parse_query | |
| pre_get_posts | |
| wp | |
| template_redirect | |
| get_header | |
| wp_head |
サンプルコード
サンプル1: カテゴリの表示数を変更する
add_filter('woocommerce_product_categories_widget_args', 'change_category_display_count');
function change_category_display_count($args) {
$args['number'] = 10; // 10個のカテゴリを表示
return $args;
}
このサンプルコードは、WooCommerceの商品カテゴリウィジェットで表示するカテゴリの数を10に変更します。
サンプル2: 特定のカテゴリを除外する
add_filter('woocommerce_product_categories_widget_args', 'exclude_specific_category');
function exclude_specific_category($args) {
$args['exclude'] = array(12, 34); // ID 12および34のカテゴリを除外
return $args;
}
このサンプルコードは、特定のカテゴリ(ID 12と34)をウィジェットから除外します。
サンプル3: 階層表示を有効にする
add_filter('woocommerce_product_categories_widget_args', 'enable_hierarchical_display');
function enable_hierarchical_display($args) {
$args['hierarchical'] = true; // 階層表示を有効にする
return $args;
}
このサンプルコードは、商品カテゴリの階層表示を有効にします。
サンプル4: カスタムCSSクラスを追加する
add_filter('woocommerce_product_categories_widget_args', 'add_custom_css_class');
function add_custom_css_class($args) {
$args['css_class'] = 'my-custom-class'; // カスタムCSSクラスを設定
return $args;
}
このサンプルコードは、商品カテゴリウィジェットにカスタムCSSクラスを追加します。
サンプル5: カテゴリリンクのターゲットを変更する
add_filter('woocommerce_product_categories_widget_args', 'change_category_link_target');
function change_category_link_target($args) {
$args['link_target'] = '_blank'; // カテゴリリンクを新しいタブで開く
return $args;
}
このサンプルコードは、商品カテゴリリンクを新しいタブで開くように設定します。