您所在位置:
WooCommerce: 以编程方式将产品标记为精选
对于管理数百种产品的店主来说,手动设置特色商品的效率很低。动态方法可以根据特定条件(如类别、价格或自定义逻辑)自动将产品标记为特色产品,从而节省管理时间。
通常情况下,您只需登录 wp-admin,点击产品表中的 “星形 ”图标,即可将 WooCommerce 产品标记为特色产品。但是,如果您不用点击任何东西就能自动完成这项工作呢?
值得庆幸的是,WooCommerce 提供了一个过滤器钩子,让您可以随时覆盖特色状态。这意味着您可以以编程方式应用规则,同时将管理时间保持为零。
下面是一个简单的 PHP 代码段!

PHP 代码段 #1:有条件地将 WooCommerce 产品 ID 标记为特色产品
此函数使用 WooCommerce 过滤器自动将某些产品标记为特色产品,而无需更改数据库中的数据。下面是详细说明:
- add_filter: bbloomer_mark_products_as_featured: 这是检查特色状态的自定义函数。
- 产品检查: 在该函数中,我们会检查产品的 ID 是否为指定的 ID(123、456、789)之一。如果是,产品将被标记为特色状态。
- 返回精选状态: 如果产品 ID 符合,则返回 true,将产品标记为精选。否则,将保持原来的状态($featured)。
简单地说,该函数根据产品 ID 自动将某些产品标记为特色产品,而无需手动操作。
add_filter( 'woocommerce_product_get_featured', 'bbloomer_mark_products_as_featured', 9999, 2 ); function bbloomer_mark_products_as_featured( $featured, $product ) { if ( in_array( $product->get_id(), [ 123, 456, 789 ] ) ) { return true; } return $featured; }
PHP 代码段 #2:有条件地将整个 WooCommerce 产品类别标记为精选类别
- 添加过滤器: bbloomer_mark_products_as_featured: has_term: 检查产品是否属于 “瑜伽 ”类别。
- 返回 true:如果产品属于 “瑜伽 ”类别,函数会将其标记为特色产品。
- 返回原始状态: 如果产品不在 “瑜伽 ”类别中,则保留原来的特色状态。
此代码会自动将 “瑜伽 ”类别中的所有产品标记为特色产品,而无需修改数据库。
add_filter( 'woocommerce_product_get_featured', 'bbloomer_mark_products_as_featured', 9999, 2 ); function bbloomer_mark_products_as_featured( $featured, $product ) { if ( has_term( 'yoga', 'product_cat', $product->get_id() ) ) { return true; } return $featured; }