gpt4 book ai didi

php - 如何在钩子(Hook)中访问 WooCommerce 自定义计费字段

转载 作者:行者123 更新时间:2023-12-02 05:16:35 24 4
gpt4 key购买 nike

我正在编写一个自定义 WordPress 函数,当客户从选择菜单中更改“状态”字段时,它将更改 flat_rate 运费。目前我正在我的主题的functions.php中做

我创建了一个自定义字段来将“状态”字段表示为帐单字段中的下拉菜单。我使用“WooCommerce Checkout Manager”插件来设置自定义字段并禁用默认的“State”字段。

现在我想根据我的自定义“状态”字段的值更改运费。我无法检索该字段的数据。此外,我想知道一旦更改此字段的值,我可以使用什么 Hook 来更改统一运费。

我使用了这个过滤器 Hook (woocommerce_package_rates),但它不起作用。

这是我的代码,我从另一个教程中获得,然后进行了自定义

function wc_ninja_change_flat_rates_cost( $rates, $package ) {
$destination = $package['destination'];
$city = $destination['myfield12']; // getting the city field value

// Make sure flat rate is available

if ( isset( $rates['flat_rate'] ) ) {

if ( $city == 'Alex' || $city == 'الإسكندرية' ) {
// Set flat rate to cost $10 more
$rates['flat_rate']->cost = 30;
}
else {
$rates['flat_rate']->cost = 20;
}
}

return $rates;
}
add_filter( 'woocommerce_package_rates', 'wc_ninja_change_flat_rates_cost', 10, 2 );

最佳答案

我找到了这个:
How to update shipping cost in cart dynamically (ajax) based on a custom field in WooCommerce
基本上它通过 JS 捕获字段数据并向服务器发送 Ajax 请求,然后服务器将值存储在 session 中。然后增加额外费用。这不完全是我想要做的,而是一种功能性的解决方法。

关于php - 如何在钩子(Hook)中访问 WooCommerce 自定义计费字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41137422/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com