Довільні поля для Woocommerce без плагінів
Ви можете створити додаткове поле без використання плагінів, використовуючи функції WordPress для роботи з метаданими. Для цього виконайте такі кроки:
Відкрийте файл functions.php для вашої теми для редагування.
Додайте наступний код до кінця файлу:
// Добавляем новое поле метаданных в товары WooCommerce
add_action( 'woocommerce_product_options_general_product_data', 'add_custom_fields_to_products' );
function add_custom_fields_to_products() {
global $woocommerce, $post;
echo '<div class="product_custom_field">';
woocommerce_wp_text_input(
array(
'id' => '_custom_field',
'placeholder' => 'Введите информацию о товаре',
'label' => __('Информация о товаре', 'woocommerce'),
'desc_tip' => 'true'
)
);
echo '</div>';
}
// Сохраняем значения дополнительных полей метаданных при сохранении товара
add_action( 'woocommerce_process_product_meta', 'save_custom_fields_to_products' );
function save_custom_fields_to_products( $post_id ) {
$woocommerce_custom_product_text_field = $_POST['_custom_field'];
if( !empty( $woocommerce_custom_product_text_field ) )
update_post_meta( $post_id, '_custom_field', esc_attr( $woocommerce_custom_product_text_field ) );
}
Цей код додає нове поле метаданих «_custom_field» у розділ «General» сторінки редагування товару у WooCommerce та зберігає його значення у базі даних при збереженні товару.
Відкрийте файл single-product.php для вашої теми.
Додайте наступний код у потрібне місце на сторінці товару:
<?php
$custom_field = get_post_meta( get_the_ID(), '_custom_field', true );
if ( ! empty( $custom_field ) ) {
echo '<p>Информация о товаре: ' . $custom_field . '</p>';
}
?>
Цей код отримує значення поля метаданих «_custom_field» для поточного товару та відображає його на сторінці товару в потрібному місці.
Збережіть файли functions.php та single-product.php.
Тепер ви можете додавати та відображати додаткову інформацію про товари у WooCommerce через створене вами поле метаданих.