月度归档:5月 2022

WooCommerce购物车对象使用以及方法函数概括

WooCommerce二次开发中,经常会需要对购物车进行改造,甚至有时候会需要重写购物车页面,所以就有必要把WooCommerce的购物车提供的接口方法做一下整理。本文对我在最近的一些项目中使用过的方法进行简要的记录。

首先,在调用任何购物车方法之前,先要检查当前页面环境对购物车对象是否可用:

1
2
3
4
if ( is_null( WC()->cart ) ) {
wc_load_cart();
}
WC()->cart->get_cart();

常用的条件函数,返回true/false

1
2
3
4
5
6
7
8
9
10
//检查购物车是否有商品
WC()->cart->is_empty();
//检查购物车是否需要付费,如果费用为0则返回false
WC()->cart->needs_payment();
//检查购物车中是否已经记录收货地址
WC()->cart->show_shipping();
//检查是不是需要寄送(用于计算运费的情况)
WC()->cart->needs_shipping();
//检查是不是有折扣,如果后台减了价格,这里会返回true
WC()->cart->has_discount();

查看详细 »

WooCommerce Rest API开发微信小程序和APP等第三方应用的鉴权方式

最近忙于自己开发基于WooCommerce的微信小程序。在决定自己研发之前,我也调查过国内已有的他人研发的WooCommerce微信小程序,对各家的产品Demo分别进行了试用后,还是决定自己从0开发一套小程序。从无到有的过程必然是一项浩大的工程,但经历一下这个过程还是很有必要的。首先,我们开发的项目100%自己掌握代码修改是最基本的要求。目前市面上已有两款第三方开源WooCommerce微信小程序,但都只是部分开源,且给出的源代码甚至不能直接跑通,使用这些开源代码做二次开发会很“受制于人”。考虑到自己也需要长期深耕定制小程序,需要随心所欲地扩展功能和设计,作为开发者就必须对项目的每一行代码都有本质理解。要达到对一个系统有本质理解的程度,最快的方法并不是去读别人的代码,而是自己写一套出来。恰好手头的一个项目给了我2个月时间,以我对WooCommerce的了解,是有信心独立完成小程序的开发的。目前项目开发已完成,点击这里可以查看案例,今后会不定期分享一些零碎的经验心得。

基于WooCommerce的Rest API开发第三方应用,首先要解决用户鉴权问题,这里要分两种情况:
1. 用户未登录
2. 用户已登录
查看详细 »