在 WooCommerce 中显示购物车项目的特定最高自定义字段值
Display specific highest custom field value from cart items in WooCommerce
我在 WooCommerce 中使用高级自定义字段插件,我的 WooCommerce 产品有一个自定义字段 get_post_meta( get_the_ID(), "lead_time", true );
"。当有人检查此字段时,会显示 交货时间[=如果缺货,每个产品 34=]。
我需要从所有购物车商品/订单商品中找到最长的“交货时间”,然后将该数字显示为订单的最终交货时间。
以下代码显示购物车中所有产品的交货时间:
foreach ( WC()->cart->get_cart() as $cart_item ) {
$leadTimes = get_post_meta($cart_item['product_id'] , 'lead_time', true );
echo $leadTimes;
}
例如 cart/order 中有 3 个产品:
- 第一个有 7 天的交货时间,
- 第二个提前期为 14 天,
- 第三个提前期为 7 天。
但是显示7147
.
我需要显示 “交货时间 = 14 天”,因为 14 是购物车中 3 件商品的最长交货时间。我已经尝试了 3 天以来我能想到的使用上述 foreach 循环的所有可能组合。有很多不同的结果,但不是我需要的。
如有任何帮助,我们将不胜感激。
使用 php max()
函数尝试以下操作:
$lead_time = array(); // Initializing
// Loop through cart items
foreach ( WC()->cart->get_cart() as $cart_item ) {
$lead_time[] = get_post_meta( $cart_item['product_id'], 'lead_time', true);
}
echo '<p>Max Lead time: ' . max($lead_time) . ' days</p>';
您将获得最大值(显示)。
或者当您使用高级自定义字段时,这也应该有效:
$lead_time = array(); // Initializing
// Loop through cart items
foreach ( WC()->cart->get_cart() as $cart_item ) {
$lead_time[] = get_field('lead_time', $cart_item['product_id']);
}
echo '<p>Max Lead time: ' . max($lead_time) . ' days</p>';
我在 WooCommerce 中使用高级自定义字段插件,我的 WooCommerce 产品有一个自定义字段 get_post_meta( get_the_ID(), "lead_time", true );
"。当有人检查此字段时,会显示 交货时间[=如果缺货,每个产品 34=]。
我需要从所有购物车商品/订单商品中找到最长的“交货时间”,然后将该数字显示为订单的最终交货时间。
以下代码显示购物车中所有产品的交货时间:
foreach ( WC()->cart->get_cart() as $cart_item ) {
$leadTimes = get_post_meta($cart_item['product_id'] , 'lead_time', true );
echo $leadTimes;
}
例如 cart/order 中有 3 个产品:
- 第一个有 7 天的交货时间,
- 第二个提前期为 14 天,
- 第三个提前期为 7 天。
但是显示7147
.
我需要显示 “交货时间 = 14 天”,因为 14 是购物车中 3 件商品的最长交货时间。我已经尝试了 3 天以来我能想到的使用上述 foreach 循环的所有可能组合。有很多不同的结果,但不是我需要的。
如有任何帮助,我们将不胜感激。
使用 php max()
函数尝试以下操作:
$lead_time = array(); // Initializing
// Loop through cart items
foreach ( WC()->cart->get_cart() as $cart_item ) {
$lead_time[] = get_post_meta( $cart_item['product_id'], 'lead_time', true);
}
echo '<p>Max Lead time: ' . max($lead_time) . ' days</p>';
您将获得最大值(显示)。
或者当您使用高级自定义字段时,这也应该有效:
$lead_time = array(); // Initializing
// Loop through cart items
foreach ( WC()->cart->get_cart() as $cart_item ) {
$lead_time[] = get_field('lead_time', $cart_item['product_id']);
}
echo '<p>Max Lead time: ' . max($lead_time) . ' days</p>';