重命名WooCommerce版本2.6.13的产品选项卡标题

时间:2018-07-10 10:14:14

标签: php wordpress woocommerce tabs

我正在使用WooCommerce版本2.6.13,因为最新版本的WooCommerce不支持我的主题。我需要重命名产品标签,并尝试使用以下代码片段重命名标签。但这不起作用。

add_filter( 'woocommerce_product_tabs', 'woo_rename_tabs', 98 );
function woo_rename_tabs( $tabs ) {
$tabs['description']['title'] = __( 'تفاصيل' );     // Rename the description tab
return $tabs;
}

tabs.php

<?php
/**
* Single Product tabs
*
* @author   WooThemes
* @package  WooCommerce/Templates
* @version  2.4.0
*/

if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}

/**
* Filter tabs and allow third parties to add their own
*
* Each tab is an array containing title, callback and priority.
* @see woocommerce_default_product_tabs()
*/
$tabs = apply_filters( 'woocommerce_product_tabs', array() );

if ( empty($tabs) ) {
 return;
}
$tab_keys = array_keys( $tabs );
$active_tab_key = array_shift( $tab_keys );
?>
<div id="shopreviews" class="tours-tabs">

<ul class="nav nav-tabs">
<?php foreach ( $tabs as $key => $tab ) {
    printf( '<li%s><a href="#tab%s" data-toggle="tab">%s</a></li>',
        $key == $active_tab_key ? ' class="active"' : '',
        $key,
        apply_filters( 'woocommerce_product_' . $key . '_tab_title', $tab['title'], $key )
    );
}; ?>
</ul>

<div class="tab-content">
    <?php foreach ( $tabs as $key => $tab ) {
        if ( empty( $tab['content'] ) && ! empty( $tab['callback'] ) ) { 
            ob_start();
            call_user_func( $tab['callback'], $key, $tab );
            $tab['content'] = ob_get_clean();
        }

        printf(
            '<div class="tab-pane %s" id="tab%s">' . 
                '<div class="tours-tabs__content padding-all">%s</div>' .
            '</div>',
            $key == $active_tab_key ? 'in active' : 'fade',
            $key,
            $tab['content']
        );
    } ?>
</div>
</div>

这是我的页面http://royalfalconholidays.com/arabic/tours/exotic/,我必须将标题“ Details”重命名为阿拉伯语。
有什么建议么?也许有其他/更好的方法?

1 个答案:

答案 0 :(得分:2)

我不确定为什么此代码段对您不起作用:

enumerate

但是您可以使用另一个过滤器(you've already tried ..):>>> seen = set() >>> [int(not(s in seen or seen.add(s))) for s in my_list] [1, 1, 0, 0, 1, 0] >>> [i for i, e in enumerate(_) if e] [0, 1, 4]

add_filter( 'woocommerce_product_tabs', 'woo_rename_tabs', 98 );
function woo_rename_tabs( $tabs ) {
$tabs['description']['title'] = __( 'تفاصيل' );     // Rename the description tab
return $tabs;
}

如果您想更改其他标签的标题

woocommerce_product_description_tab_title

因此,只需用标签的代替add_filter( 'woocommerce_product_description_tab_title', function(){ return 'تفاصيل'; } ); -例如add_filter( 'woocommerce_product_photos_tab_title', function(){ return 'Title for the "photos" tab'; } ); 进入“照片”标签。