簡體   English   中英

在 Woocommerce 的管理產品列表中添加自定義“銷售價格”列

[英]Add a custom "Sale Price" column to admin products list in Woocommerce

我正在嘗試在 Woocommerce 的管理產品列表中添加一個銷售價格列。

這是我的代碼:

   add_filter( 'manage_edit-product_columns', 'onsale_product_column', 10);

   function onsale_product_column($columns){
   $new_columns = [];
   foreach( $columns as $key => $column ){
      $new_columns[$key] = $columns[$key];
      if( $key == 'product_cat' ) {
           $new_columns['onsale'] = __( 'Sale Price','woocommerce');
       }
     }
    return $new_columns;
    }

    add_action( 'manage_product_posts_custom_column', 
    'onsale_product_column_content', 10, 2 );

    function onsale_product_column_content( $column, $product_id ){
    global $post;
    if( $column == 'onsale' ){
        if( $product_id->is_on_sale() ) {
            echo $product_id->get_sale_price();
        }
        echo '-';
    }
}

但它不起作用。 我做錯了什么?

您的代碼中有一些錯誤……請嘗試以下操作:

add_filter( 'manage_edit-product_columns', 'onsale_product_column', 10);
function onsale_product_column($columns){
    $new_columns = [];
    foreach( $columns as $key => $column ){
        $new_columns[$key] = $columns[$key];
        if( $key == 'product_cat' ) {
            $new_columns['onsale'] = __( 'Sale Price','woocommerce');
        }
    }
    return $new_columns;
}

add_action( 'manage_product_posts_custom_column', 'onsale_product_column_content', 10, 2 );
function onsale_product_column_content( $column, $post_id ){
    if( $column == 'onsale' ){
        global $post, $product;

        // Excluding variable and grouped products
        if( is_a( $product, 'WC_Product' ) && ! $product->is_type('grouped') &&
        ! $product->is_type('variable') && $product->is_on_sale() ) {
            echo strip_tags( wc_price( $product->get_sale_price() ) );
        }
    }
}

代碼位於活動子主題(或活動主題)的 function.php 文件中。 測試和工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM