WooCommerce中的自定义订单操作

时间:2014-06-02 12:44:59

标签: wordpress drop-down-menu woocommerce e-commerce orders

我正在尝试在WooCommerce订单页面中添加自定义订单操作。

我想在WooCommerce中的批量订单操作下拉列表中添加两个新选项

  1. Mark Refunded
  2. Mark On-Hold
  3. 对此方面的任何帮助表示高度赞赏。

1 个答案:

答案 0 :(得分:8)

这个目标有两个部分需要解决。

第一部分是在单个订单页面的元数据框中获取自定义订单操作。我试图完成同样的事情,但没有找到任何明确的东西,所以我在这里创建了一个教程:

http://neversettle.it/add-custom-order-action-woocommerce/

第二部分是在主要订单页面的批量操作下拉列表中添加自定义订单操作。 Skyverge在这里有一个很好的教程:

http://www.skyverge.com/blog/add-custom-bulk-action/

您需要注意的唯一具体事项是使用正确的post_type。对于WooCommerce订单,您需要使用它来代替该教程的第一个示例:

add_action('admin_footer-edit.php', 'custom_bulk_admin_footer');

function custom_bulk_admin_footer() {

    global $post_type;

    if($post_type == 'shop_order') {
    ?>
    <script type="text/javascript">
        jQuery(document).ready(function() {
            jQuery('<option>').val('export').text('<?php _e('Export')?>').appendTo("select[name='action']");
            jQuery('<option>').val('export').text('<?php _e('Export')?>').appendTo("select[name='action2']");
        });
    </script>
    <?php
    }
}

请注意,shop_order会替换条件检查的帖子post_type以添加批量操作。

但从根本上说,@ brasofilo是正确的 - 在大多数情况下,WooCommerce使用标准的WordPress结构,post_type机制和分类法。将订单操作添加到订单页面的过程与“帖子”页面相同。

但是,您对单个订单页面上的自定义订单操作是正确的 - 仅限WooCommerce,您需要参考有关如何解决该部分的第一个教程。