我可以添加ID或类“ wc_display_item_meta”

时间:2019-10-15 06:37:56

标签: woocommerce

在woocommerce结帐结果页面的“ wc-item-meta”列表中

我想在“ strong”和“ p”元素中添加id或class,以使用CSS进行控制。 (将文本更改为图像)

像p class =“ 01_S”,strong class =“ wc-item-meta-label 01_S”

有什么解决办法吗?

<ul class="wc-item-meta">
    <li>
        <strong class="wc-item-meta-label">sleeve :</strong>
        <p>01_S</p>
    </li>
    <li>
        <strong class="wc-item-meta-label">hood :</strong>
        <p>02_M</p>
    </li>
</ul>

1 个答案:

答案 0 :(得分:1)

在活动主题的functions.php中使用以下代码片段实现以上目的-

function modify_woocommerce_display_item_meta( $html, $item, $args ) {
    $strings = array();
    $html = '';
    foreach ( $item->get_formatted_meta_data() as $meta_id => $meta ) {
        // remove strip tags
        $display_value = wp_strip_all_tags( $meta->display_value );
        $value     = $args['autop'] ? wp_kses_post( $display_value ) : wp_kses_post( make_clickable( trim( $display_value ) ) );
        $args['label_before'] = '<strong class="wc-item-meta-label ' . wp_strip_all_tags( $display_value ) . '">';
        $args['label_after'] = ':</strong> ';
        $strings[] = $args['label_before'] . wp_kses_post( $meta->display_key ) . $args['label_after'] . '<p class="' . wp_strip_all_tags( $display_value ) . '">' . $value . '</p>';
    }

    if ( $strings ) {
        $html = $args['before'] . implode( $args['separator'], $strings ) . $args['after'];
    }
    return $html;

}
add_filter( 'woocommerce_display_item_meta', 'modify_woocommerce_display_item_meta', 99, 3 );