doushanmo7024
2018-09-25 12:53 阅读 71
已采纳

Wordpress / Woocommerce如何自定义wc_display_item_meta

I have some custom meta values which gets rendered in an unordered-list which is fine but I would like to know if it is possible to customize the output?

As mentioned wc_display_item_meta displays:

<ul class="wc-item-meta">
  <li>
     <strong class="wc-item-meta-label">My label</strong> 
     <p>My custom data</p>
  </li>
</ul>

So, is it possible to change that?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

2条回答 默认 最新

  • 已采纳
    dongmimeng5500 dongmimeng5500 2018-09-25 15:50

    You can pass arguments to the wc_display_item_meta() function that allow you to customize parts of the markup. These are the default values but you can change them to whatever you need.

    wc_display_item_meta($item, array(
        'before'    => '<ul class="wc-item-meta"><li>',
        'after'     => '</li></ul>',
        'separator' => '</li><li>',
    ));
    
    点赞 2 评论 复制链接分享
  • doutang1992 doutang1992 2019-02-08 18:21

    One way is actually NOT to use that function and use the following foreach loop.

    That way you get hold of meta data as an object and can choose which keys and values to display, format them as you wish etc. You get the idea using this instead of wc_display_item_meta()

    foreach ( $item->get_formatted_meta_data() as $meta_id => $meta ) {
         print_r($meta);
    }
    

    Function wc_display_item_meta() itself uses it. See http://hookr.io/functions/wc_display_item_meta/

    点赞 评论 复制链接分享

相关推荐