WC_Subscription :: update_dates($ dates,$ timezone)不再有效吗?

问题描述:

似乎功能 WC_Subscription :: update_dates($ dates,$ timezone)在3.0+更新中不再有效,因为CRUD平台?

如何找到正确的功能使用,因为这是网站上的内容。我基本上有一个循环,获取所有活动订阅,我想更新next_payment_date。现在,如果你只是通过数据库来做这件事,它不会更新,所以你必须通过这个函数来运行它,以便更新所有的调度器等。

如果我运行,类似于这个,我得到一个500错误。任何帮助将不胜感激。

<?php 
WC_Subscription::update_dates(array(
     'next_payment' => '2017-05-30 04:30:00' 
)); 
?> 
+0

我相信我想通了,而不是直接调用它,我首先实例化它。我的错。 IE:#SET订阅 \t \t $ sub = new WC_Subscription($ subscription-> ID); \t \t#UPDATE date \t \t $ sub> update_dates(array('next_payment'=> $ new_payment_date)); – Justin

+0

如果您设法解决您自己的问题,请将其作为答案发布。其他人也可能有同样的问题,并期待。 –

+1

是的,我会的,只是还不能,因为它太快了。哈哈! – Justin

我相信我知道了,而不是直接调用它,我首先实例化它。

我的不好。 IE: 我试图直接调用它,而不是首先实例化它。

WC_Subscription::update_dates($dates, $timezone); 

# SET subscription 
$sub = new WC_Subscription($subscription->ID); 
# UPDATE dates 
$sub->update_dates(array('next_payment' => $new_payment_date));