【问题标题】:Add a new column with author name to WooCommerce admin coupon list将带有作者姓名的新列添加到 WooCommerce 管理员优惠券列表
【发布时间】:2021-04-15 14:23:25
【问题描述】:

昨天我们遇到这样的情况,有人问我“谁创建了这个优惠券?”。不幸的是,WooCommerce 默认情况下不会在列出所有优惠券的优惠券概览中显示优惠券的创建者。

我试图找出的是,如何在 WooCommerce > Marketing > Coupons 概览中添加一个带有作者姓名的新列。

这是我目前所拥有的:

function display_coupon_creator() {

    foreach( $coupons as $coupon ){

        // Get coupon creator
        $coupon_creator_id = get_post_field('post_author', $post_id);
        $creator_name = get_the_author_meta( 'display_name', $coupon_creator_id );

        echo $creator_name . '<br>';    
    }
}

很遗憾没有达到预期的结果,有没有人可以让我走上正轨?

【问题讨论】:

    标签: php wordpress woocommerce backend coupon


    【解决方案1】:

    这将在优惠券列表中添加一个带有作者姓名的新列, 通过添加到代码中的注释标签进行解释。

    // Add a Header
    function filter_manage_edit_shop_coupon_columns( $columns ) {   
        // Add new column
        $columns['coupon_author'] = __( 'Author', 'woocommerce' );
    
        return $columns;
    }
    add_filter( 'manage_edit-shop_coupon_columns', 'filter_manage_edit_shop_coupon_columns', 10, 1 );
    
    // Populate the Column
    function action_manage_shop_coupon_posts_custom_column( $column, $post_id ) {
        // Compare
        if ( $column == 'coupon_author' ) {
            // Author ID
            $author_id = get_post_field ( 'post_author', $post_id );
            
            // Display name
            $display_name = get_the_author_meta( 'display_name' , $author_id );
            
            // NOT empty
            if ( ! empty ( $display_name ) ) {
                echo $display_name;         
            }
        }
    }
    add_action( 'manage_shop_coupon_posts_custom_column' , 'action_manage_shop_coupon_posts_custom_column', 10, 2 );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-25
      • 2019-04-02
      • 2021-04-07
      • 2021-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-29
      相关资源
      最近更新 更多