【问题标题】:Enable manual renewal only for a specific product in WooCommerce subscription product仅为 WooCommerce 订阅产品中的特定产品启用手动续订
【发布时间】:2023-01-25 18:36:30
【问题描述】:
我有一个 WooCommerce 订阅产品,有两个用途(一个永不过期,一个应该过期)。我想为一个永不过期的会员产品启用自动续订,并为其他产品禁用自动续订。 WooCommerce 在设置页面上提供了手动续订选项,但它适用于所有产品。
我只想为特定产品启用手动续订,以便我可以对其他产品使用自动方法。我怎样才能做到这一点?
【问题讨论】:
标签:
php
wordpress
woocommerce
product
woocommerce-subscriptions
【解决方案1】:
你可以试试这个:
add_filter( 'woocommerce_subscription_product_renewal_rule', 'customize_subscription_renewal_rule', 10, 2 );
function customize_subscription_renewal_rule( $renewal_rule, $subscription ) {
// Define the ID of the product for which you want to enable manual renewal
$product_id = 123;
if ( $subscription->get_product_id() === $product_id ) {
return 'manual';
}
return $renewal_rule;
}
此代码将检查订阅产品 ID 是否等于定义的产品 ID,如果匹配将返回“手动”以启用手动续订,如果不匹配将返回默认续订规则。希望能帮助到你 :)