Woocommerce 更改现有定期付款的电子商务订阅率

Woocommerce 更改现有定期付款的电子商务订阅率,woocommerce,recurring,subscriptions,Woocommerce,Recurring,Subscriptions,我们已经提高了订阅费,但到目前为止,续费仍按旧的费率进行,尽管新的订户按新的费率进行 有没有办法让价格上涨反映在现有用户的定期付款中 谢谢您需要同步续订,否则他们将获得旧的费率 默认情况下,续订同步功能关闭。要启用续订同步,请执行以下操作: 转到:WooCommerce设置订阅 单击同步续订复选框 单击保存更改按钮 阅读更多我发现这样做的方法是修改woocommerce数据库 有三个值需要更改 1) 在“wp\u订单\u项目元”表中,输入“\u行\u总计”值 2) 在“wp\u商业\u订单\u项

我们已经提高了订阅费,但到目前为止,续费仍按旧的费率进行,尽管新的订户按新的费率进行

有没有办法让价格上涨反映在现有用户的定期付款中


谢谢

您需要同步续订,否则他们将获得旧的费率

默认情况下,续订同步功能关闭。要启用续订同步,请执行以下操作:

转到:WooCommerce设置订阅

单击同步续订复选框

单击保存更改按钮


阅读更多

我发现这样做的方法是修改woocommerce数据库

有三个值需要更改

1) 在“wp\u订单\u项目元”表中,输入“\u行\u总计”值

2) 在“wp\u商业\u订单\u项目元”表中,输入“\u行\u小计”值 这基于项目id,该id在“wp\U商业\U订单\U项目”表中按订单号查找

3) 在“wp_Posteta表”中,“_order_total”值 这基于订单号,如“订阅”列表中所示

执行此操作的一些代码:

$query = "SELECT order_item_id FROM wp_woocommerce_order_items where order_id=$orderno";
if ($result = $mysqli->query($query))
{
    while ($row = $result->fetch_object())
    {
        $itemid = $row->order_item_id;
        $itemquery = "SELECT meta_value FROM wp_woocommerce_order_itemmeta where order_item_id=$itemid and meta_key='_variation_id'";
        if ($itemresult = $mysqli->query($itemquery))
        {
            $variationid = $itemresult->fetch_object()->meta_value;
           .... verify that have the right product.....
        }

        $sql = "UPDATE wp_woocommerce_order_itemmeta SET meta_value='$newamount' where order_item_id=$itemid and meta_key='_line_total'";
        $modresult = $mysqli->query($sql);

        $sql = "UPDATE wp_woocommerce_order_itemmeta SET meta_value='$newamount' where order_item_id=$itemid and meta_key='_line_subtotal'";
        $modresult = $mysqli->query($sql);
    }
}


$sql = "UPDATE wp_postmeta SET meta_value='$newamount' where post_id=$orderno and meta_key='_order_total'";
printf("SQL: $sql\n", FILE_APPEND);
$modresult = $mysqli->query($sql);
printf("Update order total result:" . print_r($modresult, true)."\n");

这是否会使订阅的所有付款在当月的同一天支付,因为我们需要他们在注册日期的每月周年纪念日继续重复。