WooCommerce:添加隐藏的订单项元数据

时间:2016-03-16 作者:dcolumbus

我的印象是,如果您在meta\\u键上添加下划线,它将对管理员和随后的订单收据等隐藏。

但是,我的出现了?我不明白发生了什么。。。

meta_键:_testing_this, meta\\u值:asdasdasd

如何添加订单项目元而不显示它?

3 个回复
最合适的回答,由SO网友:dcolumbus 整理而成

答案是序列化要隐藏的数据。

SO网友:cyberwombat

您需要将以下内容添加到隐藏项元数组中:

add_filter(\'woocommerce_hidden_order_itemmeta\', 
   array($this, \'hidden_order_itemmeta\'), 50);

function hidden_order_itemmeta($args) {
  $args[] = \'my_hidden_meta\';
  return $args;
}

SO网友:Hà Bầu

My solution:

//remove order item meta key
        add_filter( \'woocommerce_order_item_get_formatted_meta_data\', \'mobilefolk_order_item_get_formatted_meta_data\', 10, 1 );

function mobilefolk_order_item_get_formatted_meta_data($formatted_meta){
        $temp_metas = [];
        foreach($formatted_meta as $key => $meta) {
            if ( isset( $meta->key ) && ! in_array( $meta->key, [
                    \'lyric_id\',
                    \'lyric_song_title\',
                    \'lyric_artist_name\'
                ] ) ) {
                $temp_metas[ $key ] = $meta;
            }
        }
        return $temp_metas;
    }

相关推荐

列出分类法:如果分类法没有POST,就不要列出分类法--取决于定制的POST-META?

这可能很难解释,我不知道是否有解决办法!?我有一个名为“wr\\u event”的自定义帖子类型和一个名为“event\\u type”的分层自定义分类法。自定义帖子类型有一个元框,用于event_date 并且与此帖子类型关联的所有帖子都按以下方式排序event_date. 我在循环中有一个特殊的条件来查询event_date 已经发生了-在这种情况下,它没有显示,但只列在我的档案中。就像你可以使用wp_list_categories() 我编写了一个自定义函数,它以完全相同的方式列出所有分类术语。现在