我需要将一些订单分配给另一位客户用户。
有没有办法在phpmyadmin中批量处理?
订单号范围:23000:24000。
目标客户用户ID = 89
答案 0 :(得分:3)
- 已更新2 - (更正了代码中的一些拼写错误)
这是一个 PHP自定义函数,可以完成工作,使用for循环迭代您的订单号范围。它还会使用get_post_meta()
和update_post_meta()
函数检查订单中的 '_customer_user'
met_key并更新该客户ID值。
在运行此功能之前,您将进行数据库备份。
所以这是这个函数的代码:
function cristmas_bulk_editing_orders( ){
if(!is_admin()) return; // Will work only from Admin Backed.
else {
$new_costumer_id = 89;
// Iterating with a for loop through a range of numbers
for( $order_id = 23000; $order_id <= 24000; $order_id++ ){
// Getting the postmeta customer ID for 'order' post-type
$costumer_id = get_post_meta( $order_id, '_customer_user', true );
// If it's an existing order and doesn't have already this user ID
// It update the customer ID
if( !empty($costumer_id) && $new_costumer_id != $costumer_id )
update_post_meta( $order_id, '_customer_user', $new_costumer_id );
}
}
}
cristmas_bulk_editing_orders();
代码进入活动子主题的function.php文件(活动主题或任何插件文件)。
您只需使用此功能一次,然后将其删除 (见下文)。
<强> USAGE:强>
将此代码粘贴并保存在 function.php 文件中后,在浏览器中显示或重新加载任何管理页面。
现在你可以用这种方式评论这个功能并保存:
// cristmas_bulk_editing_orders();
检查订单是否已根据需要更改,并删除所有此代码。
代码经过测试并有效。