- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
关闭。这个问题需要更多focused .它目前不接受答案。
想改善这个问题吗?更新问题,使其仅关注一个问题 editing this post .
3年前关闭。
Improve this question
我正在使用 Woocommerce 开发一个电子商务网站,我希望自定义订单状态为“已发货”。
所以这就是流程的走向:客户下订单会收到一封电子邮件,说订单已确认,当前状态正在处理,管理员从其 express 员那里获取跟踪 ID,可以将其粘贴到新部分并将订单状态更改为已发货。这将向客户发送另一封带有跟踪 ID 的电子邮件。
是否有任何自定义代码可以帮助我实现此功能?
任何帮助将不胜感激。
最佳答案
以下代码将为 Woocommerce 订单添加一个新的自定义“已发货”订单状态:
// Register a custom order status
add_action('init', 'register_custom_order_statuses');
function register_custom_order_statuses() {
register_post_status('wc-shipped ', array(
'label' => __( 'Shipped', 'woocommerce' ),
'public' => true,
'exclude_from_search' => false,
'show_in_admin_all_list' => true,
'show_in_admin_status_list' => true,
'label_count' => _n_noop('Shipped <span class="count">(%s)</span>', 'Shipped <span class="count">(%s)</span>')
));
}
// Add a custom order status to list of WC Order statuses
add_filter('wc_order_statuses', 'add_custom_order_statuses');
function add_custom_order_statuses($order_statuses) {
$new_order_statuses = array();
// add new order status before processing
foreach ($order_statuses as $key => $status) {
$new_order_statuses[$key] = $status;
if ('wc-processing' === $key) {
$new_order_statuses['wc-shipped'] = __('Shipped', 'woocommerce' );
}
}
return $new_order_statuses;
}
// Adding custom status 'awaiting-delivery' to admin order list bulk dropdown
add_filter( 'bulk_actions-edit-shop_order', 'custom_dropdown_bulk_actions_shop_order', 50, 1 );
function custom_dropdown_bulk_actions_shop_order( $actions ) {
$new_actions = array();
// add new order status before processing
foreach ($actions as $key => $action) {
if ('mark_processing' === $key)
$new_actions['mark_shipped'] = __( 'Change status to shipped', 'woocommerce' );
$new_actions[$key] = $action;
}
return $new_actions;
}
// Add a custom order status action button (for orders with "processing" status)
add_filter( 'woocommerce_admin_order_actions', 'add_custom_order_status_actions_button', 100, 2 );
function add_custom_order_status_actions_button( $actions, $order ) {
// Display the button for all orders that have a 'processing', 'pending' or 'on-hold' status
if ( $order->has_status( array( 'on-hold', 'processing', 'pending' ) ) ) {
// The key slug defined for your action button
$action_slug = 'shipped';
// Set the action button
$actions[$action_slug] = array(
'url' => wp_nonce_url( admin_url( 'admin-ajax.php?action=woocommerce_mark_order_status&status='.$action_slug.'&order_id='.$order->get_id() ), 'woocommerce-mark-order-status' ),
'name' => __( 'Shipped', 'woocommerce' ),
'action' => $action_slug,
);
}
return $actions;
}
// Set styling for custom order status action button icon and List icon
add_action( 'admin_head', 'add_custom_order_status_actions_button_css' );
function add_custom_order_status_actions_button_css() {
$action_slug = "shipped"; // The key slug defined for your action button
?>
<style>
.wc-action-button-<?php echo $action_slug; ?>::after {
font-family: woocommerce !important; content: "\e029" !important;
}
</style>
<?php
}
代码位于事件子主题(或事件主题)的 functions.php 文件中。测试和工作。
add_filter( 'bulk_actions-edit-shop_order', 'remove_a_bulk_order_action', 20, 1 );
function remove_a_bulk_order_action( $actions ) {
unset($actions['mark_on-hold']);
return $actions;
}
All statuses change keys start with
mark_
+ the status slug (withoutwc-
).
关于php - 在 Woocommerce 中添加自定义订单状态 "Shipped",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52097274/
这是一个有点哲学问题。我正在为我的软件添加一个小功能,我认为大多数用户都会使用它,但他们使用该软件的次数可能只有 10%。换句话说,该软件没有它 3 个月就很好,但是有 4 或 5 个用户要求它,我同
我已经在我的网站上成功设置了 PayPal IPN,它运行良好。在我的 PayPal 帐户中,我设置了评估运费和税收计算的选项(仅限爱荷华州)。但唯一的问题是,在 PayPal 结帐页面上,它要求我手
我很乐意帮助解决我遇到的令人沮丧的问题。第一次设置 Spree,但我已经在 Rails 中开发了 3 年,所以我熟悉它的工作原理。 几乎是默认设置。但是当我尝试结帐时,单击“地址”页面上的“保存并继续
我想知道如何使用 eBay API 将“标准运输(FedEx Ground 或 FedEx Home Delivery®)”指定为运输服务。任何人都可以提供任何指示吗?所有示例仅使用“标准运输”选项。
我目前正在使用 Sharepoint 框架环境开发 Sharepoint WebPart。我目前正在使用功能区(添加按钮和下拉菜单),因此我必须在线部署 Web 部件,以便我可以测试功能区相关任务(工
我正在开发的其中一个网络应用程序有一个相当小的网络商店/购物车。由于客户公司实际位于加利福尼亚州并且在那里有实际位置,因此他们需要对运往加利福尼亚州的所有订单收取加利福尼亚州销售税。 对于那些不知道的
想象一下,您没有功能蔓延的问题,您有一个积极进取且稳定的团队,明确定义要解决的问题,并且您了解与项目相关的领域/语言/工具。 您如何坚持计划并完成 1.0 里程碑? 您对迭代运输的方法是什么? 我想特
有人知道Aramex Shipping服务及其API吗?我在他们的网站上找到了示例代码,并应用了我的API凭据,但出现错误。有人可以帮我整合吗? https://rsidemos.com/develo
我有一个客户想要电子商务网站,但他们必须提供定制运输服务。运输方式如下: 当在线客户下订单并显示发货页面时,此页面必须查询传递所有订单信息(以 JSON 形式)的自定义发货服务。运输服务将返回一个包含
如何获得包含 magento 中运费的数组/对象,例如统一费率、免费送货等? 与选择的地址或产品无关。 最佳答案 这是另一种方法。您需要设置邮政编码和国家/地区 - 即使这对您的运输方式并不重要。 /
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎是题外话,因为它缺乏足够的信息来诊断问题。 更详细地描述您的问题或include a min
在使用 Paypal API 创建付款时,是否有任何选项允许从结帐弹出窗口中删除“运送至”部分?我的意思是不要在弹出窗口中显示它。 我不使用shipping_address option创建付款配置时
前提是人 1 想通过大洋向人 2 发送 secret 消息 M(没有 key 共享)。她决定通过 3 艘船发送部分消息,如果任何两艘船的版本都被交付,人 2 就可以构建完整的原始消息。目标是使每个部分
我正在开发电子商务类型的 Web 应用程序,需要以某种方式处理运费计算。我发现的一些规则: 免费送货 满满免运费 特定地理区域内免费送货 统一运费 固定费率 + 每个产品的固定金额 不同的费率取决于运
关闭。这个问题需要更多focused .它目前不接受答案。 想改善这个问题吗?更新问题,使其仅关注一个问题 editing this post . 3年前关闭。 Improve this questi
我尝试实现 fedex api 来计算从 wnn 到一个国家/地区的邮政编码的运输成本。它在美国工作得很好。它还可以从美国到其他国家/地区工作(已尝试在 IN 和 AU)。但是当我尝试使用来自印度或澳
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 想改进这个问题?将问题更新为 on-topic对于堆栈溢出。 2年前关闭。 Improve this qu
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 7 年前。 Improve this ques
我有一个超小型(没有数据,只有一些单列表,我只是在测试)本地 SQL Server 数据库,我正在尝试将其在线迁移到 SQL 托管实例。 据我所知,我已按应有的方式配置了所有内容 - 备份文件存在于文
当通过 Suitescript 在 NetSuite 中创建销售订单时,我们可以通过向其发送包含完整地址的字符串来成功设置“发货至”(字段 ID:shipaddress)。 这会导致问题,因为“SHI
我是一名优秀的程序员,十分优秀!