我正在尝试在单个产品页面上添加新标签页。我的以下代码效果很好: -
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源代替图像。
任何帮助都将非常感激。
由于
答案 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”组成。
我希望