Reputation: 57
add_action( 'woocommerce_product_description_tab', 'aq_display_disclaimer', 40, 9);
function aq_display_disclaimer() {
echo '<b>Disclaimer:</b> ' . get_field('product_disclaimer');
}
I am trying to display a WYSIWYG field on frontend but it is not displaying for some reason. I also tried to use other functions like product_summary and before and after the_content and it works great.
Any help would be highly appreciated. Ahmed Q.
Upvotes: 1
Views: 2617
Reputation: 254373
The
woocommerce_product_description_tab
it's not a hook but a function that is triggered as a callback for Product description tab.
It loads the templatesingle-product/tabs/description.php
, and you can't use it to add your product disclaimer.
Now the template single-product/tabs/description.php
use the_content()
Wordpress function to display the product description and you can add your disclaimer after it using the_content
filter hook this way:
add_filter( 'the_content', 'display_disclaimer_after_product_description', 10, 1 );
function display_disclaimer_after_product_description( $content ){
// Only for single product pages
if( ! is_product() ) return $content;
if( $product_disclaimer = get_field( 'product_disclaimer', get_the_id() ) )
return $content . '<b>Disclaimer:</b> ' . $product_disclaimer;
return $content;
}
Code goes in function.php file of your active child theme (or active theme). Tested and works.
If you want to replace the product description with that disclaimer, you will replace this line:
return $content . '<b>Disclaimer:</b> ' . $product_disclaimer;
by the following one:
return '<b>Disclaimer:</b> ' . $product_disclaimer;
Upvotes: 2