Reputation: 561
Hi I am using this Woocommerce Plugin in my site. And what I want is to display my custom fields in single product.
I know I have to use hooks for this, but have no idea at all what hook to use. Inside woocommerce template I found out tabs.php
file.
Here's the code
$tabs = apply_filters( 'woocommerce_product_tabs', array() );
if ( ! empty( $tabs ) ) : ?>
<div class="woocommerce-tabs wc-tabs-wrapper">
<ul class="tabs wc-tabs">
<?php foreach ( $tabs as $key => $tab ) : ?>
<li class="<?php echo esc_attr( $key ); ?>_tab">
<a href="#tab-<?php echo esc_attr( $key ); ?>"><?php echo apply_filters( 'woocommerce_product_' . $key . '_tab_title', esc_html( $tab['title'] ), $key ); ?></a>
</li>
<?php endforeach; ?>
</ul>
<?php foreach ( $tabs as $key => $tab ) : ?>
<div class="panel entry-content wc-tab" id="tab-<?php echo esc_attr( $key ); ?>">
<?php call_user_func( $tab['callback'], $key, $tab ); ?>
</div>
<?php endforeach; ?>
</div>
Can anyone help me?
Upvotes: 3
Views: 3526
Reputation: 2398
Try this one.
Add a hook in functions.php file add_action( 'woocommerce_after_single_product_summary', 'action_woocommerce_after_single_product_summary', 10, 2 );
This function is used to show custom values in description tab Then print the custom field as per you requirement.
// define the woocommerce_after_single_product_summary callback
function action_woocommerce_after_single_product_summary( $woocommerce_output_product_data_tabs, $int ) {
// if you have defined custom post type
echo get_post_meta( $post_id, $key, $single );
// OR
// if you are using acf
echo $field = get_field($field_name, $post_id, $format_value);
};
// add the action
add_action( 'woocommerce_after_single_product_summary', 'action_woocommerce_after_single_product_summary', 10, 2 );
Upvotes: 2
Reputation: 14913
Copy wp-content/plugins/woocommerce/templates/single-product/tabs/description.php
to wp-content/themes/[active theme]/woocommerce/single-product/tabs/description.php
Create folders if required, now edit the file and add the logic to display your custom fields.
Upvotes: 2