Javascript 查看用户是否在最后10秒内完成订单(woocommerce)?
基本上,由于许多原因,我无法以我希望的方式重定向到工作状态,因此我想添加一个函数,该函数将在/my account/页面上运行,以查看当前用户是否在过去10秒内订购了产品a或B(使用autocomplete order插件,将具有已完成状态)如果是这样,则将它们重定向到函数中指定的自定义感谢页面Javascript 查看用户是否在最后10秒内完成订单(woocommerce)?,javascript,php,woocommerce,hook-woocommerce,Javascript,Php,Woocommerce,Hook Woocommerce,基本上,由于许多原因,我无法以我希望的方式重定向到工作状态,因此我想添加一个函数,该函数将在/my account/页面上运行,以查看当前用户是否在过去10秒内订购了产品a或B(使用autocomplete order插件,将具有已完成状态)如果是这样,则将它们重定向到函数中指定的自定义感谢页面 我正在寻找很多函数来拉动最近的订单,但我不确定我是否朝着正确的方向前进。在3.0中,如何获取用户最近订单的时间戳和产品id?是否有一个钩子将其绑定到/my account/页面,或者我是否需要破解jav
我正在寻找很多函数来拉动最近的订单,但我不确定我是否朝着正确的方向前进。在3.0中,如何获取用户最近订单的时间戳和产品id?是否有一个钩子将其绑定到/my account/页面,或者我是否需要破解javascript/php解决方案?购买后直接运行代码如何? 您可以检查它是哪种产品(如果需要,还可以进行更多检查),然后重定向到“自定义感谢”页面
add_action( 'woocommerce_thankyou', 'my_custom_code' );
function my_custom_code( $order_id ) {
// Lets grab the order
$order = wc_get_order( $order_id );
// do stuff
}
下面是我最后做的:
- 在“我的帐户”页面的“订单”表中添加了自定义列
包括订单ID(用于添加列-SKU-和
然后更新orders.php页面中的逻辑以添加产品ID
到SKU列
函数新建\u顺序\u列($columns=array()){ $columns['product-name']=_u('SKU','Text-Domain'); 返回$columns; } 添加过滤器(“woocommerce\u account\u orders\u columns”、“new\u orders\u columns”);
- 添加了一个jQuery脚本(通过添加到“我的 “帐户”页),该页将提取当前日期,即日期时间 日期列中的属性和SKU中的产品ID文本 第一行中的列-即最近的顺序
- 使用Javascript查找当前时间和 订单时间,并将该数字转换为秒
- 添加了基于该时间值的条件重定向
差异小于10(秒),且该产品id为
特定id
函数mycustomorder\u redirect(){ 如果(用户是否已登录){ 日期默认时区设置(“美国/纽约”); $time_now=日期('c'); echo'jQuery(“文档”).ready(函数(){ // //获取最新订单日期时间 var lastorder_td=jQuery(“td.woocmerce-orders-table__cell-order-date:eq(0)time”).attr(“datetime”); // //获取最新订单产品id var product_check=jQuery(“td.woocommerce-orders-table__cell-product-name:eq(0)”).text(); // //删除空白 产品检查=产品检查。替换(/(^\s+\s+$)/g,“”; // //获取当前日期时间 var current_wrap=“”.$time_now.”; // //删除+00:00或-00:00 lastorder_td=lastorder_td.子字符串(0,lastorder_td.长度-6); 当前环绕=当前环绕子字符串(0,当前环绕长度-6); // //转换为javascript日期 变量列a=新日期(当前换行); var column_b=新日期(lastorder_td); // //查找时差 var dif=列a-列b; // //转换为秒 var seconds_toredirect=dif/1000; // //添加重定向 如果(秒数小于10&(产品检查==1 | |产品检查==2)){ window.location.replace(“https://exampleurl.com/page/"); } }); '; } } 添加快捷码(“订单自定义”、“mycustomorder\u重定向”);