微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将自定义元列添加到 WooCommerce 产品列表

如何解决将自定义元列添加到 WooCommerce 产品列表

我们希望为列中的每个产品添加供应商商店名称。我知道如何添加列以获取供应商商店名称,但是当我为每个产品输出供应商时,我仍然有一个空数组。

有人能帮忙吗? :)

add_filter( 'manage_edit-product_columns','show_product_order',15 );
function show_product_order($columns){

   //add column
   $columns['vendor_store_name'] = __( 'vendor'); 

   return $columns;
}

function get_dokan_vendor_shop_name_from_product_test( $product_id ) {
    if( empty($product_id) ) return;
    $seller = get_post_field( 'post_author',$product_id );
    $author = get_user_by( 'id',$seller );
    $vendor = dokan()->vendor->get( $seller );
    $store_info = dokan_get_store_info( $author->ID );
    if ( ! empty( $store_info['store_name'] ) ) {
        return $vendor->get_shop_name();
    } else {
        return;
    }
}

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

function vendor_product_column( $column,$postid ) {
    if ( $column == 'vendor_store_name' ) {
        echo get_post_meta( $postid,$store_info,true );
    }
}

更新

我现在尝试直接在我获得供应商的循环中输出信息。但仍然是一个空数组。这种方法真的可以完成吗?

add_filter( 'manage_edit-product_columns',15 );
function show_product_order($columns){

   //add column
   $columns['vendor_store_name'] = __( 'vendor'); 

   return $columns;
}

function vendor_product_column( $product_id ) {
   foreach  ( $products->get_Meta as $product ) {
    
    $product = $item->get_product();
    $author_id = $product->post->post_author;
    $vendor = dokan()->vendor->get( $author_id );
    $shop_name = $vendor->get_shop_name();
       
    }
    
     if ( $column == 'vendor_store_name' ) {
        echo $store_info;
    }
}

add_action( 'manage_product_posts_custom_column',2 );

解决方法

我能够修复它!这是代码:)

add_filter( 'manage_edit-product_columns','custom_admin_products_store_name_column',9999 );
 
function custom_admin_products_store_name_column( $columns ){
   $columns['vendor_store_name'] = __( 'Vendor'); 
   return $columns;
}
 
add_action( 'manage_product_posts_custom_column','custom_admin_products_store_name_column_content',10,2 );
 
function custom_admin_products_store_name_column_content( $column,$product_id ){

    $seller = get_post_field( 'post_author',$product_id);
    $store_info = dokan_get_store_info( $seller );
    $store_name = $store_info['store_name'];

    if ( $column == 'vendor_store_name' ) {
        echo __($store_name);
        
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。