跳到主要内容

管理 WooCommerce 菜单和分类法归档中的自定义属性

可以用于分层导航的属性是一个自定义分类法,这意味着您可以将其显示在菜单中,或者按属性显示产品。 这需要您进行一些操作,并且必须启用归档功能。

为菜单注册分类法

当注册自定义属性的分类法时,WooCommerce 会调用以下钩子:

$show_in_nav_menus = apply_filters('woocommerce_attribute_show_in_nav_menus', false, $name);

例如,如果您的属性别名为 size,您需要执行以下操作才能将其注册到菜单:

add_filter('woocommerce_attribute_show_in_nav_menus', 'wc_reg_for_menus', 1, 2);

function wc_reg_for_menus( $register, $name = '' ) {
if ( $name == 'pa_size' ) $register = true;
return $register;
}

自定义属性别名以 pa_ 开头,因此名为 size 的属性的别名将是 pa_size

现在,在 外观 > 菜单 中使用您的属性。 但是,您会注意到,当您单击指向您的分类法项的链接时,它会采用默认的博客样式。

创建一个模板

您需要为您的属性设置主题,以便以您想要的方式显示产品。 要做到这一点:

  1. woocommerce/templates/taxonomy-product_cat.php 复制到您的主题文件夹中。
  2. 将模板重命名为反映您的属性 - 在我们的示例中,我们将使用 taxonomy-pa_size.php

现在,当您查看自定义属性的分类法项时,应该会看到此模板。