php - 每次我添加东西时验证购物车,每次不同的数量
问题描述
我是 php 和 worldpress 的新手,我正在为电子商务网站做一个验证代码,我设法做到了
function so_validate_add_cart_item( $passed, $product_id, $quantity,
$variation_id = '', $variations= '' )
{
if ( 1 != 3 ){
$passed = false;
wc_add_notice( __( 'You can not do that', 'textdomain' ), 'error' );
}
return $passed;
}
add_filter( 'woocommerce_add_to_cart_validation',
'so_validate_add_cart_item', 10, 5 );
问题是,这只是一个通用的东西(它甚至没有购物车的数量,它只是测试失败)但是我的系统有一步一步的“创建你自己的包”,每个步骤都有不同的数量您必须选择的项目,所以我需要知道如何在每一步中使用不同的条件进行检查,这意味着我如何告诉网站在一个页面中做某事而在另一个页面中做某事
解决方案
如果您想检查所有购物车商品的详细信息,包括每件商品的数量,您可以从 global $woocommerce 访问购物车数据
function so_validate_add_cart_item( $passed, $product_id, $quantity,
$variation_id = '', $variations= '' )
{
global $woocommerce;
$cart_items = $woocommerce->cart->get_cart();
//enter code here
if ( 1 != 3 ){
$passed = false;
wc_add_notice( __( 'You can not do that', 'textdomain' ), 'error' );
}
return $passed;
}
add_filter( 'woocommerce_add_to_cart_validation',
'so_validate_add_cart_item', 10, 5 );
希望这可以帮助。
推荐阅读
- mysql - SQL Server - (AdventureWorks) 列出没有产品的供应商
- c# - C# - 使用循环打开对话框
- c++ - lower_bound() 给出意想不到的结果
- reactjs - NPM 供应商插件无法构建
- c# - 实体框架插入到具有现有寄存器的多对多实例中,创建重复的寄存器
- android - 如何使用 git rev-list 列出要变基的补丁
- javascript - React webkit 前缀用于粘性位置
- java - 在运行时更改 FloatingActionButton 背景颜色
- android - Android中UI组件的基本操作
- java - 可执行 jar 中的 Apache POI