在产品页面的新标签中添加自定义HTML - WooCommerce

时间:2017-08-24 09:48:12

标签: php wordpress woocommerce hook-woocommerce

我正在尝试在单个产品页面上添加新标签页。我的以下代码效果很好: -

add_filter( 'woocommerce_product_tabs', 'woo_new_product_tab' );
function woo_new_product_tab( $tabs ) {
// Adds the new tab
    $tabs['desc_tab'] = array(
        'title'     => __( 'Additional Information', 'woocommerce' ),
        'priority'  => 50,
        'callback'  => 'woo_new_product_tab_content'
    );
}

我想在'title'=>

中插入一些html数据

例如:

add_filter( 'woocommerce_product_tabs', 'woo_new_product_tab' );
    function woo_new_product_tab( $tabs ) {
    // Adds the new tab
        $tabs['desc_tab'] = array(
            'title'     => __( 'Additional Information <img src="'.$image.'"/>', 'woocommerce' ),
            'priority'  => 50,
            'callback'  => 'woo_new_product_tab_content'
        );
    }

以上代码输出完整的html源代替图像。

任何帮助都将非常感激。

由于

2 个答案:

答案 0 :(得分:1)

您可以:

add_filter( 'woocommerce_product_tabs', 'woo_new_product_tab' );
 function woo_new_product_tab( $tabs ) {
 // Adds the new tab
 $tabs['desc_tab'] = array(
    'title'     => __( 'Additional Information', 'woocommerce' ),
    'priority'  => 50,
    'callback'  => 'woo_new_product_tab_content'
);
}


function woo_new_product_tab_content() {
 // The new tab content
 echo '<p>Lorem Ipsum</p>';
}

答案 1 :(得分:0)

我知道这个线程很旧,但是我遇到了同样的问题。您可以使用选项卡标题的自定义过滤器解决该问题。

所以你有这个:

add_filter( 'woocommerce_product_tabs', 'woo_new_product_tab' );
function woo_new_product_tab( $tabs ) {
// Adds the new tab
    $tabs['desc_tab'] = array(
        'title'     => __( 'Additional Information <img src="'.$image.'"/>', 'woocommerce' ),
        'priority'  => 50,
        'callback'  => 'woo_new_product_tab_content'
    );
}

现在,您获得了一个名为“ desc_tab”的标签。问题在于WooCommerce不会转义其中的HTML部分,但是您可以使用过滤器,因此WooCommerce会将标签标题转换为HTML:

add_filter('woocommerce_product_desc_tab_tab_title', 'decode_html_tab', 10, 2);
function decode_html_tab($title, $key) {
    $title = html_entity_decode( $title, ENT_QUOTES );
    return $title;
}

您必须注意过滤器的标题。它由“ woocommerce _” +选项卡标题+“ _ tab_title”组成。

我希望