, чтобы достичь цели и иметь возможность изменять область текста в случае, если нам нужно отобразить другой массаж, отличный от значения по умолчанию на странице продукта, нам нужно сделать три шага:
Шаг 1. Добавление текстовой области на вкладку «Общие сведения о продукте» на панели администратора
// Display Text in Admin Panel
add_action('woocommerce_product_options_general_product_data', 'product_custom_text_area');
function product_custom_text_area()
{
// Custom Product Text Area
woocommerce_wp_textarea_input(
array(
'id' => '_optional_textarea',
'label' => __('Optional Text Area', 'woocommerce'),
'placeholder' => 'Product Text',
'desc_tip' => 'true',
'description' => __('This Text will be Displayed in Product Short Desc', 'woocommerce')
)
);
}
Шаг 2: Сохранить текст в нашей базе данных на случай, если мы добавили текст
// Save Fields
add_action('woocommerce_process_product_meta', 'product_custom_text_area_save');
function product_custom_text_area_save($post_id)
{
if (!empty($_POST['_optional_textarea'])) {
update_post_meta($post_id, '_optional_textarea', esc_attr($_POST['_optional_textarea']));
}
}
Шаг 3: Показать наш текст на странице продукта, если он существует, если не отображать наше сообщение по умолчанию
//Display The Text in Product Page
add_action('woocommerce_before_add_to_cart_form', 'display_text_area');
function display_text_area()
{
global $post;
if (get_post_meta($post->ID, '_optional_textarea', true)) {
echo get_post_meta($post->ID, '_optional_textarea', true);
return;
}
echo __('FREE LOCAL SHIPPING', 'woocommerce');
}
Выход по умолчанию
BackEnd
если вы хотите отображать только кратко заданный текст по умолчанию в кратком описании, вам нужно использовать только эту функцию:
//Display The Text in Product Page
add_action('woocommerce_before_add_to_cart_form', 'display_text_area');
function display_text_area()
{
echo __('FREE LOCAL SHIPPING', 'woocommerce');
}
Просто поместите приведенные выше коды в functions.php
и все готово.