Дополнительная вкладка в карточке товара Woocommerce
Для того, чтобы добавить новую вкладку в карточку товара, содержимое которой можно было бы менять через админку, понадобится:
1. Создать дополнительное поле метаданных для товаров WooCommerce. Для этого вы можете использовать плагин Advanced Custom Fields (ACF) или любой другой плагин для создания пользовательских полей.
Например создается поле (тип поля - текст, или редактор WordPress) с именем custom_tab_content. Отображать это поле для типов записей - товар. Во всех товарах появляется дополнительное поле, в котором будет заполняться нужна инфа.
2. Теперь нужно сделать так, чтобы это все отображалось на сайте. Для этого достаточно добавить следующий код в файл functions.php:
// Дополнительная вкладка в карточке товара
function custom_product_tab_content( $tab ) {
$custom_tab_content = get_post_meta( get_the_ID(), 'custom_tab_content', true );
if ( ! empty( $custom_tab_content ) ) {
echo wp_kses_post( $custom_tab_content );
} else {
return '';
}
}
function add_custom_product_tab( $tabs ) {
$custom_tab_content = get_post_meta( get_the_ID(), 'custom_tab_content', true );
if ( ! empty( $custom_tab_content ) ) {
$tabs['custom_tab'] = array(
'title' => 'Новая вкладка',
'callback' => 'custom_product_tab_content',
'priority' => 50,
);
}
return $tabs;
}
add_filter( 'woocommerce_product_tabs', 'add_custom_product_tab' );
В 'title' замените название на свое. Также если у вас поле, созданное в ACF, имеет другое имя, замените custom_tab_content на ваше.
Код выше, выводит дополнительную вкладку в карточке товара в том случае, если в админке сайта в карточке товара это поле заполнено. Если не заполнено, то вкладка выводиться не будет.