如何为WooCommerce自定义属性注册多个分类法?
如何注册多个自定义属性到WooCommerce导航菜单?
你可以通过定义包含所有目标属性名的数组,判断当前属性是否在数组内,来实现批量注册自定义分类法的需求。修改后的代码如下:
add_filter('woocommerce_attribute_show_in_nav_menus', 'wc_reg_for_menus', 1, 2); function wc_reg_for_menus( $register, $name = '' ) { // 在这里添加需要注册到导航菜单的属性名(保留pa_前缀) $allowed_attributes = array('pa_druivensoort', 'pa_soort', 'pa_gewicht'); if ( in_array($name, $allowed_attributes) ) { $register = true; } return $register; }
修改说明:
- 新建
$allowed_attributes数组,将所有需要显示在导航菜单的自定义属性名(必须带pa_前缀)添加进去 - 用
in_array()替换原有的单个相等判断,只要当前属性名在数组内,就会开启导航菜单显示权限 - 后续新增属性时,直接在数组里追加对应名称即可,无需修改核心判断逻辑
内容的提问来源于stack exchange,提问作者Rick Sanchez C-131
相关产品推荐
相关产品推荐

