- Windows 本地安装 Kibana 查询 Elasticsearch
- Windows 本地安装和使用 Elasticsearch
- WooCommerce 请登录 链接不工作
- 使 WooCommerce 订单搜索支持自定义字段
- 如何使用 WooCommerce Session
- 获取 WooCommerce 页面地址的方法
- WooCommerce后台通过自定义字段检索产品
- WooCommerce 自定义订单号
- WooCommerce Login / Register Redirect
- WooCommerce自带的shortcodes
- WooCommerce 打印订单
- WooCommerce 新用户注册管理员通知
- WooCommerce 移除产品页商品图片的url
- WooCommerce Email 模版增加全局内容的一个方法
- 错误:Call to a member function is_visible() on a non-object
- WooCommerce实用代码集合
- WooCommerce根据支付方式收取额外费用(2021)
- WooCommerce 订单管理
- WooCommerce移除登出账户的确认提示
- WooCommerce列出所有产品分类(2021)
- WooCommerce收据功能的实现
- WooCommerce Dynamic Pricing动态价格表(2021)
- 如何免费试用WordPress付费插件
- 写代码定制WooCommerce产品页模板(2021)
- 自定义WooCommerce Order Details模板明细部分(2021)
- WooCommerce Class WC_Order
- WooCommerce 产品搜索支持 SKU
- WooCommerce定制产品的Additional Information选项卡(2021)
- WooCommerce 定制产品页选项卡(2021)
- WooCommerce admin bar快捷菜单
- WooCommerce库存管理插件Stock Manager for WooCommerce(2021)
- WordPress备份插件UpdraftPlus(2021)
- 隐藏WooCommerce的购物功能
- WooCommerce目录模式Catalog Mode(2021)
- 构建基于WooCommerce和WPML的多语言电商网站 - 概述篇
- 构建基于WooCommerce和WPML的多语言电商网站 - 安装WooCommerce和测试数据
- 配置WordPress运行环境 - Wampserver安装图解
- 构建基于WooCommerce和WPML的多语言电商网站 - 安装和配置 WPML 插件
- 构建基于 WooCommerce 和 WPML 的多语言电商网站 - 使 WooCommerce 和 WPML 协同工作
- WooCommerce Paypal & RMB
- WooCommerce 2.0 来袭
- 如何修改 WooCommerce 插件的模版
- WooCommerce 显示每个产品的总销量
- WooCommerce 中的 Custom JavaScript Event
- WooCommerce Authorize.net CIM Gateway
- 用WooCommerce Fees API 添加手续费
- WooCommerce 产品加入购物车后直接结账
- 设置 Paypal Sandbox 测试 WooCommerce Subscription 产品
- WooCommerce Conditional Tags 详解
- WooCommerce Single Category Selector
- WooCommerce 自定义结账字段(2021)
- WooCommerce 将产品属性加入网站菜单(2021)
- WooCommerce Product API(2021)
- WooCommerce 添加附加费 surcharge(2021)
- WooCommerce 安装中文语言包(2021)
- WooCommerce 营销:订阅促销弹窗和潜在客户发掘(2021)
- WooCommerce 邮件定制、预览和测试(2021)
- WooCommerce 在线站点付款测试(2021)
- WooCommerce Product Archive Image Slider(2021)
- woocommerce_form_field() examples
- WooCommerce 商店页插入 shortcode 问题
- WooCommerce 在 Email Header 中获取用户信息
- WooCommerce 自定义结账字段图文详解
- WooCommerce 2.1.12 - 如何修改相关产品列表
- 修改 WooCommerce My Account 页面的地址格式
- Woocommerce:如何根据国家设置支付方式
- Woocommerce 支付宝插件初探
- 支付宝集成 如何在回调地址中使用自定义参数
- Woocommerce Settings API 如何使用
- Woocommerce 中文货币符号错误如何解决
- WooCommerce 如何扩展支付方式
- Woo commerce 搭建 WordPress 电子商务网站
- WooCommerce 查看所有用户购物车(2021)
- WooCommerce 最近一个月销量排行(2021)
- WooCommerce 后台自定义产品选项(2021)
- WooCommerce 自定义产品列表带分页(2021)
- WooCommerce 设置 - 自定义选项卡和字段(2021)
- WooCommerce My Account Menu Links 定制方法(2021)
- WooCommerce 产品列表增加数量字段
- WooCommerce 可变产品变种的数量限制
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
WooCommerce 查看所有用户购物车(2021)
WooCommerce的购物车数据存储在两个地方,一个是woocommerce_sessions
数据表,另一个是在usermeta中,meta key是woocommerce_persistent_cart_[blog ID]
,blog ID指multisite的site ID。本文介绍查看所有用户购物车的方法,当然,是用程序读取。
查看所有用户购物车的代码
- 从
wp_woocommerce_sessions
表中读取所有数据,代码只读取了10个,数据量很大时分页是必须的 session_key
是user ID的就是注册用户,session_key
是一个长长的字符串的代表游客session_value
里存储了所有购物车相关的数据,例如购物车里有什么产品,购物车的各种总价,税费,邮费等等。如果想知道具体有什么,可以var_dump
一下$cart_session
变量。$cart_session['cart']
里存储了购物车产品,这里简单用程序把产品信息打印出来(sola_list_cart_item
函数的作用)
/**
* Get all carts data from wp_woocommerce_sessions table
*
*/
function sola_get_all_carts_from_session() {
global $wpdb;
$carts = $wpdb->get_results("SELECT session_key,session_value FROM {$wpdb->prefix}woocommerce_sessions Limit 0,10");
foreach ($carts as $cart) {
$customer_id = $cart->session_key;
$cart_session = maybe_unserialize($cart->session_value);
$cart_totals = maybe_unserialize($cart_session['cart_totals']);
$cart_total = $cart_totals['total'];
echo '<p>';
if (is_numeric($customer_id)) {
$user = new WP_User($customer_id);
echo '注册用户: ' . $user->get('user_email');
} else {
echo '游客';
}
echo ', 购物车总价:', wc_price($cart_total), '<br>';
// List products in cart
sola_list_cart_item(maybe_unserialize($cart_session['cart']));
echo '</p>';
}
}
/**
* List products of cart
*/
function sola_list_cart_item($cart_items) {
// Loop through cart items and get cart items details
foreach ($cart_items as $cart_item_key => $cart_item) {
$product_id = $cart_item['product_id'];
$variation_id = $cart_item['variation_id'];
$quantity = $cart_item['quantity'];
$attributes = $cart_item['variation'];
$item_taxes = $cart_item['line_tax_data'];
$subtotal_tax = $cart_item['line_subtotal_tax'];
$total_tax = $cart_item['line_tax'];
$subtotal = $cart_item['line_subtotal'];
$total = $cart_item['line_total'];
$product = wc_get_product($product_id);
echo '<a href="', $product->get_permalink(), '">', $product->get_title(), '</a>, 数量:', $quantity, ', 单价', $product->get_price_html(), '<br>';
}
}
把代码做成shortcode运行一下的效果如下图所示:
根据用户ID列出购物车产品
function sola_get_cart_contents_by_user_id($user_id) {
// Get an instance of the WC_Session_Handler Object
$session_handler = new WC_Session_Handler();
// Get the user session from its user ID:
$session = $session_handler->get_session($user_id);
// Get cart items array
$cart_items = maybe_unserialize($session['cart']);
sola_list_cart_item($cart_items);
}
能实现此功能的插件
这些插件主要用来实现abandoned cart营销,功能更为强大,Retainful是第三方服务,所有查看功能要去它的网站才行。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论