2017-08-15 154 views
1

是否可以向Woocommerce管理产品列表中添加“交付时间”列?将自定义列添加到WooCommerce后端的管理产品列表中

我知道有一些额外的栏(拇指,价格,product_cat等)在“屏幕选项”中选择,但“交付时间”不可用。

是否有可能以某种方式将它添加到列表中?


编辑:

我试图按照LoicTheAztecs的答案,但我有问题,找到正确的meta_key蛞蝓。

如果我在wp_postmeta中搜索“delivery”,我得到0个结果。

但也有产品交付时间分配。 在我的产品页面上有一个文本字段“Lieferzeit:1-2 Wochen”(表示交货时间:1-2周)。 如果我搜索整个数据库中的“Wochen”,我会在wp_terms中得到2次wp_options和6次点击。

DB通用搜索:

db search


安打wp_terms DB:

hits in wp_terms


你知道如何从这里找到正确的meta_key slug吗?

+0

是的,可能的,但是从那里这个交货期数据会来吗?产品元? – Alice

回答

1

下面是与2个自定义函数挂钩的方法。第一个使用标题创建列,第二个使用产品数据填充列。但是你需要在第二个函数中设置正确的对应的数据。

这里是代码:

// ADDING A CUSTOM COLUMN TITLE TO ADMIN PRODUCTS LIST 
add_filter('manage_edit-product_columns', 'custom_product_column',11); 
function custom_product_column($columns) 
{ 
    //add columns 
    $columns['delivery'] = __('Delivery time','woocommerce'); // title 
    return $columns; 
} 

// ADDING THE DATA FOR EACH PRODUCTS BY COLUMN (EXAMPLE) 
add_action('manage_product_posts_custom_column' , 'custom_product_list_column_content', 10, 2); 
function custom_product_list_column_content($column, $product_id) 
{ 
    global $post; 

    // HERE get the data from your custom field (set the correct meta key below) 
    $delivery_time = get_post_meta($product_id, '_delivery_time', true); 

    switch ($column) 
    { 
     case 'delivery' : 
      echo $delivery_time; // display the data 
      break; 
    } 
} 

代码放在您的活动子主题(或主题)的function.php文件或也以任何插件文件。

经过测试和工作。


如何得到正确的meta_key毛坯:

要找到对应“交货期”正确meta_key蛞蝓,如果您需要让搜索数据库中的使用PhpMyAdmin。你将不得不这样搜索delivery术语wp_postmeta表:

enter image description here

然后你会得到这样的结果(这里有一个假的蛞蝓只有1线)

enter image description here

所以,现在你应该能够得到正确的蛞蝓名(LI柯这个假 “_delivery_date” 之一) ...


相关答案(订单):Add custom columns to admin orders list in WooCommerce backend

+0

感谢您的回答。我注意到你谈到交货日期,但我的意思是交货时间。我尝试在管理员产品列表中显示“1周”..“1-2周”等栏目。 – tlange

+0

我想这是误解,因为我没有解释清楚。我不想显示订单的交货时间。 我对分配给产品的交货时间很感兴趣,比如产品编号或价格。 [示例在这里](http://tillmannlange.de/tmp/product.jpg) 而我试图有一个额外的复选框“交货时间”[这里](http://tillmannlange.de/tmp/backend。 jpg) 我指的是[本网站](https://www.design-deli.net/produkt/mesh/)。 这甚至可能吗? – tlange

+0

@tiange没有误解,因为我们在这里工作**在产品层面**而不是在订单层面。提供的代码是女仆在管理产品列表中显示产品自定义字段(工作)。现在**没有人不能为您找到这个自定义字段键**,因为这是您的最基本的工作,并且与您的设置和自定义有关。在您的问题更新中,您不提供任何有关如何在产品中设置**“条款”**的信息......因此,它可以是标签,类别或属性的术语。我不是一个占卜者。 – LoicTheAztec

相关问题