我正在尝试通过PHP创建一个WC_Product_Variable_Subscription和连接的WC_Product_Subscription_Variation
创建WC_Product_Variable和WC_Product_Variation似乎非常直截了当(我创建的类继承了该类),但设置所需的类时遇到了困难。
间隔、周期和长度
属性(例如,将订阅价格定为每月200美元,为期6个月)。
创建新的WC_Product_Subscription_Variation(s)和连接的新WC_Product_Variation时
它是否像设置后置元一样简单?
[_subscription_period] => Array
(
[0] => month
)
[_subscription_period_interval] => Array
(
[0] => 1
)
[_subscription_length] => Array
(
[0] => 3
)在创建变体之后手工操作?有人有这方面的工作代码示例吗?
感谢任何能为我指明正确方向的人!
m。
发布于 2020-04-23 09:13:50
再一次,在发布这个问题之前,我应该更详细地回顾一下底层代码--对于那些花了很多时间回答这个问题的人,我很抱歉。
关于实际答复:
如果已经创建了WC_Product_Variable_Subscription (它不是订阅,但产品类型命名可能有点混乱),并且已经创建/连接了所需的变体,则可以通过post元数据更新产品变体。
例如:
update_post_meta($variation->get_id(), '_subscription_period', 'week');
update_post_meta($variation->get_id(), '_subscription_period_interval', 1);
update_post_meta($variation->get_id(), '_subscription_length', 4);提示:如果您搜索一种创建变体的方法,您可以查看data_store的data_store方法
例如:
$data_store = $product->get_data_store();
$data_store->create_all_product_variations($product, $maxVariations);
$data_store->sort_all_product_variations($product->get_id());https://stackoverflow.com/questions/61346854
复制相似问题