在我的自定义插件中,我需要捕获每次订单状态从 变为 的情况,wc_on_hold因此wc_completed我尝试写下:
function so_status_completed( $order_id, $old_status, $new_status ) {
// if user is active , then get order amount and do all other personal calculations
global $wpdb;
$order = wc_get_order( $order_id );
//$payment_method = $order->get_payment_method(); //returns payment method bacs,cheque,cod etc
$user_id = $order->get_user_id();
$total = $order->get_total();
$order_data = $order->get_data();
//$order_total = $order->get_formatted_order_total();
$order_total = $order->get_total();
echo '<script>console.log("Debug Objects: Check order_total ' . $order_total. '");</script>';
}
add_action('woocommerce_order_payment_status_changed','so_status_completed',10,1);
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试将订单测试从暂停更改为完成时,我无法在 Chrome 控制台上回显给我订单价格......也许使用 add_action 不是将侦听器置于该事件的正确方法?
另外,由于我就在这里,我正在使用 $order-get_total() ,我在网上搜索了它的功能,但没有找到深入的文档,所以我想问你该方法是否是免费检索订单金额的正确方法应用?
谢谢!干杯!!!
wordpress orders woocommerce hook-woocommerce woocommerce-theming
我有 notepad++ 5.8.2,我试图删除以“已处理 XXXXX 总记录”开头的所有行,其中 XXXXX 是一个不同的数字。
我尝试按 CTRL+H 并将“Processed.$”放入“查找内容”中,选择“正则表达式”并将空白放入“替换为”中,但它甚至没有找到已处理的那些行。我在查找和替换它们的正则表达式中做错了什么吗?
我有一个事件,我需要在每次验证某个条件时播放mp3/wav声音.有没有办法跨浏览器播放它,即使我在平板电脑上打开Android浏览器?
实际上我使用的是一个名为ionSound的javascript插件,但看起来它在android的表格下不起作用..
喜欢:
jQuery.ajax({
type: "GET",
dataType: "json",
url: "./getData.php?idx="+id,
success: function(data) {
if (data.length > 0) {
// alert('Gotta play sound...');
dataFound = true;
$.ionSound({
sounds: [ "woop_woop" ],
path: "../../images/"
});
$.ionSound.play("woop_woop");
// alert('Played sound right now...');
} else {
dataFound = false;
}
}
});
Run Code Online (Sandbox Code Playgroud)
在此先感谢所有人!
干杯,路易吉
我再次回答这个问题......我在某些平台上发现它并没有真正发挥声音...例如在另一台带有Chrome的台式电脑上它不播放音频,也不在另一台平板电脑上......我认为这是由于浏览器的版本...所以有没有一种纯粹的javascript方式来播放像一个小MP3或wav代码的音频?
提前致谢!干杯路易吉
我有这个代码示例,它返回 JSON 格式的数据以放入 slickGrid 中:
$.getJSON(url, function(data) {
$.each(data, function() { dataReturn.push(this); });
...
myDataView.setItems(dataReturn);
...
});
Run Code Online (Sandbox Code Playgroud)
但我正在寻找一种同步方式,我尝试了这样的方法:
var dataReturn = JSON.stringfy( $.ajax({url:"...", async: false }).responseText );
myDataView.setItems(dataReturn);
Run Code Online (Sandbox Code Playgroud)
但似乎并不完全一样......我错过了什么?
提前致谢 干杯路易吉