如果没有添加优惠券代码,税收和最终价格的计算就可以了.但是,如果我添加优惠券代码(固定价格10篮子总额),税收的计算不正确,篮子总数也是.为了更好地理解我制作截图的内容.
任何帮助非常感谢!
我正在将WordPress(4.9.8)与WooCommerce(3.4.5)结合使用,我想在单个产品页面中添加优惠券字段。我一直在查看所有Woocommerce模板,但是找不到将Woocommerce优惠券字段添加到产品页面上的方法。
有任何想法吗?
我不想为此使用插件。
我正在opencart项目中进行更新.我们创建将应用折扣的优惠券.它包含在结帐页面中.我们正在从管理员方面添加此优惠券详细信息,如优惠券代码,折扣,到期日等.但用户方没有任何反应.在输入优惠券代码时没有任何反应.没有降低价格,我们也没有得到任何错误信息.
我真的一直在摸不着头脑,非常感谢帮助.我有一个商店设置,人们可以在那里上课.我有一个课程模型,订单模型和优惠券模型.以下是模型中的关联
class Course < ActiveRecord::Base
belongs_to :category
has_many :orders
has_many :coupons
end
class Order < ActiveRecord::Base
belongs_to :course
belongs_to :user
belongs_to :coupon
end
class Coupon < ActiveRecord::Base
belongs_to :course
has_many :orders
end
Run Code Online (Sandbox Code Playgroud)
我有一个非常简单的优惠券模型设置,包含代码和newprice列.我希望有人能够在新订单页面上填写优惠券表格并更新价格.
在我对新订单的看法中,我有两个表单用于新订单,一个用于优惠券.如果用户输入了正确的优惠券代码,如何检查我的控制器?如何更新要显示的优惠券价格而不是课程价格?
这是我的订单管理员
class OrdersController < ApplicationController
before_action :set_order, only: [:show, :edit, :update, :destroy]
before_action :authenticate_user!
def index
@orders = Order.all
end
def show
end
def new
course = Course.find(params[:course_id])
@course = Course.find(params[:course_id])
@order = course.orders.build
@coupon = Coupon.new
@user = current_user.id
@useremail = current_user.email
end
def discount …
Run Code Online (Sandbox Code Playgroud) 我试图在购物车页面中应用优惠券(10%)后显示优惠券说明.
显示总计我使用$ woocommerce-> cart-> cart_contents_total
如何显示优惠券说明?
如果用户已经有足够长的时间成为会员,我的网站会动态为其提供优惠券。当我生成优惠券时,我想为优惠券分配描述。但是,我似乎无法通过使用关键字更新帖子的元数据来分配描述,description
正如文档建议的那样。
目前,我正在尝试像这样分配描述:
$percent = 25;//DISCOUNT PERCENTAGE
$coupon_code = 'testcoupon'; //Coupon Code
$discount_type = 'percent'; // Type: fixed_cart, percent, fixed_product, percent_product
//ASSIGN COUPON AND DISCOUNT PERCENTAGE
$coupon = array(
'post_title' => $coupon_code,
'post_content' => '',
'post_status' => 'publish',
'post_author' => 1,
'post_type' => 'shop_coupon'
);
$new_coupon_id = wp_insert_post( $coupon );
// Add meta
update_post_meta( $new_coupon_id, 'discount_type', $discount_type );//SET DICOUNT TO BE PERCENTAGE BASED
update_post_meta( $new_coupon_id, 'coupon_amount', $percent );//SET DISCOUNT PERCENTAGE
update_post_meta( $new_coupon_id, 'individual_use', 'yes' );//ONLY ONE CUPON …
Run Code Online (Sandbox Code Playgroud) 我正在寻找一个Woocommerce钩子,它将有助于在应用特定优惠券时根据2种不同的产品类别限制更改折扣百分比.
例如,如果客户添加特定优惠券,我想:
有没有可用于实现此目的的钩子?任何可用的动作钩子或过滤钩子?
到目前为止这是我的代码:
add_filter( 'woocommerce_get_discounted_price', 'apply_coupon', 10);
function apply_coupon($price) {
global $woocommerce;
$product=$woocommerce->cart->product;
if(has_term( 'duplex-blinds', 'A' ,$product->id)){
get_product_cart_price;
10% DISCOUNT
}
if(has_term( 'duplex-blinds', 'A' ,$product->id)){
20% DISCOUNT
}
upadte total_discunt_incart($new_discount);
upadte new_price_in_cart($new_price);
upadte new_price_in_checkout($new_price);
return $price;
}
Run Code Online (Sandbox Code Playgroud)
重要的是我需要修改需要发送到Paypal 的总购物车价格,总结算价格,总折扣价格和折扣价格.
我的商店有许多钩子,这就是为什么商业默认优惠券计算会出错.我注意到在购物车页面中,折扣价格是根据自定义产品价格正确得出的,但它没有从原始购物车金额更新,因此总价格保持不变.
但在结账页面折扣价格是根据产品原价而非产品定制价格计算的,所以折扣出错了,也不是从总价格中最小化...
我有以下功能,可以在 WooCommerce 优惠券过期当天删除它们。
如何让它在过期30 天后删除它们?
function delete_expired_coupons() {
$args = array(
'posts_per_page' => -1,
'post_type' => 'shop_coupon',
'post_status' => 'publish',
'meta_query' => array(
'relation' => 'AND',
array(
'key' => 'date_expires',
'value' => current_time( 'timestamp' ),
'compare' => '<='
),
array(
'key' => 'date_expires',
'value' => '',
'compare' => '!='
)
)
);
$coupons = get_posts( $args );
if ( ! empty( $coupons ) ) {
foreach ( $coupons as $coupon ) {
wp_trash_post( $coupon->ID );
}
}
}
add_action( …
Run Code Online (Sandbox Code Playgroud) 我在互联网上搜索过,但无论有多少人问这个问题,它似乎都没有任何答案.
有没有办法从所有优惠券中排除特定产品?
我知道你可以在优惠券级别上做到这一点,但这是相当混乱的,特别是因为很多人都有自动优惠券,有几个人创建优惠券等...
TLDR:任何方式使产品从产品级别的所有优惠券中排除.
我已经使用此文档以编程方式创建了优惠券 -> https://docs.woocommerce.com/document/create-a-coupon-programatically/
效果很好,完成订单后生成一个动态优惠券代码。但我想只允许该订购产品的优惠券代码。
所以在上面的代码这里:
update_post_meta( $new_coupon_id, 'product_ids', '' );
我想使用该订单商品 ID 获取该订单产品 ID。
所以任何人都知道解决方案,然后请帮助我。
谢谢,凯坦。