Произвольные поля для Woocommerce без плагинов

Custom field 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 через созданное вами поле метаданных.

Если вы не веб разработчик и попали на эту статью с целью сделать самому — лучше довертесь професионалам и обратитесь в нашу веб студию по созданию сайтов.