Vagish
Vagish

Reputation: 369

Setting the name of a WooCommerce Extra tab using php?

Basically I have a couple of settings at the top of a php file:

$wooc_product_faq_name = 'FAQ'; // Set the tab name for the FAQs

I want to allow it to change the tab name of the following in my WooCommerce plugin:

add_filter( 'woocommerce_product_tabs', 'wooc_product_faq' );
function wooc_product_faq( $tabs ) {
    // Adds the new tab
    $tabs['FAQ'] = array(
        'title' => __( $wooc_product_faq_name , 'woocommerce' ),
        'priority' => 99, // Priority effects the order, 99 puts it at the end of the tabs
        'callback' => 'wooc_product_faq_content'
    );
    return $tabs;
}

However it won't let me do it. it just doesn't output anything. And if I change the

        'title' => __( $wooc_product_faq_name , 'woocommerce' ),

to

        'title' => __( '$wooc_product_faq_name' , 'woocommerce' ),

then it outputs correctly but the text in the tab name is $wooc_product_faq_name Not the desired FAQ.

You can see the full file here: https://github.com/VagishVela/woocommerce-product-faq-tab/blob/dev/woocommerce-product-faq-tab.php

Upvotes: 0

Views: 115

Answers (1)

Akshay Paghdar
Akshay Paghdar

Reputation: 3629

Have you tried this ??

// Configuration
global $wooc_product_faq_name;
$wooc_product_faq_name = 'FAQ'; // Set the tab name for the FAQs

//* Add FAQ Tab Filter
add_filter( 'woocommerce_product_tabs', 'wooc_product_faq' );
function wooc_product_faq( $tabs )
{
    global $wooc_product_faq_name;
    // Adds the new tab
    $tabs['FAQ'] = array(
            'title' => __( $wooc_product_faq_name , 'woocommerce' ),
            'priority' => 99, // Priority effects the order, 99 puts it at the end of the tabs
            'callback' => 'wooc_product_faq_content'
    );
    return $tabs;
}

May be this will help you.

Upvotes: 1

Related Questions