如何在WooCommerce管理产品列表中显示“运费类别”列

huangapple go评论95阅读模式
英文:

How to show "Shipping Class" column in WooCommerce admin product list

问题

我正在使用 WooCommerce。

我知道您可以在“所有产品”页面上显示:图片、SKU、库存、价格、类别、标签、特色和日期。我已经四处寻找,但找不到在页面上添加“运输类别”列的方法。

上面的代码显示了商品是否可见。有人能指导我如何显示产品的运输类别吗?

谢谢。

英文:

I am using woocommerce.

I know that you can show: Image, SKU, Stock, Price, Categories, Tags, Featured, and Date on the "All Products" page. I have had a look around I cannot find a way to add a "Shipping Class" column to the page.

  1. * @snippet New Products Table Column @ WooCommerce Admin
  2. * @how-to Get CustomizeWoo.com FREE
  3. * @author Rodolfo Melogli
  4. * @compatible WooCommerce 5
  5. * @donate $9 https://businessbloomer.com/bloomer-armada/
  6. */
  7. add_filter( 'manage_edit-product_columns', 'bbloomer_admin_products_visibility_column', 9999 );
  8. function bbloomer_admin_products_visibility_column( $columns ){
  9. $columns['visibility'] = 'Visibility';
  10. return $columns;
  11. }
  12. add_action( 'manage_product_posts_custom_column', 'bbloomer_admin_products_visibility_column_content', 10, 2 );
  13. function bbloomer_admin_products_visibility_column_content( $column, $product_id ){
  14. if ( $column == 'visibility' ) {
  15. $product = wc_get_product( $product_id );
  16. echo $product->get_catalog_visibility();
  17. }
  18. }

The code above shows if an item is visible or not. Can anyone point me in the right direct to show the product's shipping class?

Thanks

答案1

得分: 2

为了在管理产品列表中显示运输类别,请使用以下修改后的代码:

  1. add_filter('manage_edit-product_columns', 'add_admin_products_shipping_class_column', 999);
  2. function add_admin_products_shipping_class_column($columns){
  3. $columns['shipping_class'] = __('运输类别', 'woocommerce');
  4. return $columns;
  5. }
  6. add_action('manage_product_posts_custom_column', 'get_admin_products_shipping_class_column_content', 10, 2);
  7. function get_admin_products_shipping_class_column_content($column, $product_id){
  8. if ($column === 'shipping_class') {
  9. global $post, $product;
  10. if (is_a($product, 'WC_Product')) {
  11. $shipping_class_id = (int) $product->get_shipping_class_id();
  12. $shipping_class = get_term($shipping_class_id, 'product_shipping_class');
  13. echo !is_wp_error($shipping_class) ? $shipping_class->name : '<em>n/a</em>';
  14. }
  15. }
  16. }

此代码应添加到活动子主题(或活动主题)的functions.php文件中。已测试并可正常运行。

英文:

To show the shipping class in Admin product list, use the following revisited code:

  1. add_filter( &#39;manage_edit-product_columns&#39;, &#39;add_admin_products_shipping_class_column&#39;, 999 );
  2. function add_admin_products_shipping_class_column( $columns ){
  3. $columns[&#39;shipping_class&#39;] = __(&#39;Shipping Class&#39;, &#39;woocommerce&#39;);
  4. return $columns;
  5. }
  6. add_action( &#39;manage_product_posts_custom_column&#39;, &#39;get_admin_products_shipping_class_column_content&#39;, 10, 2 );
  7. function get_admin_products_shipping_class_column_content( $column, $product_id ){
  8. if ( $column === &#39;shipping_class&#39; ) {
  9. global $post, $product;
  10. if( is_a( $product, &#39;WC_Product&#39; ) ) {
  11. $shipping_class_id = (int) $product-&gt;get_shipping_class_id();
  12. $shipping_class = get_term($shipping_class_id, &#39;product_shipping_class&#39;);
  13. echo ! is_wp_error($shipping_class) ? $shipping_class-&gt;name : &#39;&lt;em&gt;n/a&lt;/em&gt;&#39;;
  14. }
  15. }
  16. }

Code goes in functions.php file of the active child theme (or active theme). Tested and works.

huangapple
  • 本文由 发表于 2023年6月18日 18:41:08
  • 转载请务必保留本文链接:https://go.coder-hub.com/76500118.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定