0

我想将 Memberpress 到期日从当前到期日起 1 年(或 2 年)分配,而不是将年份添加到今天的日期,这是默认行为。

我正在使用带有重力压力机的重力表格来注册会员。在表单中,我获取当前的到期日期,为其添加适当的年数,然后将其放入另一个字段中,保存表单时进入 usermeta 的内容。

我正在尝试使用以下代码在交易完成时更新到期日期。

我在正确的轨道上吗?

 $transaction = $event->get_data();
 $user = $transaction->user();

 if(($subscription = $transaction->subscription_id)) {
   $subscription_number = $subscription->subscr_id;
   //This transaction belongs to a recurring subscription
 }
 else {
   $transaction_number = $transaction->trans_num;
   //This is a non-recurring transaction
 }

global $wpdb;

$newdate = mysql_result(mysql_query("SELECT yearFromNow FROM usermeta WHERE userid = ".$user. "and meta_key = 'mepr_mepr_yearfromnow' " ), 0);

$insertdate = mysql_result(mysql_query("INSERT into wp_mepr_transactions max(expires_at) value ".$newdate." into WHERE userid = ".$user ), 0);


}
add_action('mepr-event-transaction-completed', 'mepr_capture_completed_transaction'); ```

4

1 回答 1

0

在假设返回值中有结果之前,应检查 SQL 查询是否有错误。

始终希望在 SQL 中发挥最大作用,而不是检索到 PHP,然后重用数据。例如,在您的情况下,有一个INSERT .. SELECT可能有用。

注意语法,您的INSERT语句不符合现有语法,并且很难弄清楚预期的内容。

于 2020-01-13T01:35:31.657 回答