我希望将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'); ```发布于 2020-01-13 09:35:32
在假定返回值中有结果之前,应检查SQL查询是否有错误。
总是看起来在SQL中做的最多,而不是检索到PHP,然后重用数据。例如,在您的示例中,可能会使用一个INSERT .. SELECT。
注意语法,您的INSERT语句不符合现有的语法,并且很难弄清楚它的意图。
https://stackoverflow.com/questions/59707422
复制相似问题