Как отображать индивидуальные комментарии к каждому методу доставки в административной панели?

Как можно добавить комментарии к методам доставки в админке WordPress, используя тему WoodMart и настройки методов доставки WooCommerce? Требуется добавить комментарии только для служебного пользования, и они не должны отображаться на сайте. Пробовал использовать указанный код, но безрезультатно.
  • 14 декабря 2023 г. 19:17
Ответы на вопрос 1
Для отображения индивидуальных комментариев к каждому методу доставки в административной панели WordPress с использованием темы WoodMart и настройками методов доставки WooCommerce, вам потребуется делать следующие шаги:

1. Откройте файл functions.php вашей активной темы WordPress.
2. Добавьте следующий код в файл functions.php:

```php
function add_shipping_comments() {
    // Получаем все методы доставки
    $shipping_methods = WC()->shipping->load_shipping_methods();
    
    // Цикл по всем методам доставки
    foreach ( $shipping_methods as $method ) {
        // Получаем ID метода
        $method_id = $method->id;
        
        // Получаем комментарий для метода доставки
        $comment = get_option( 'shipping_comment_' . $method_id );
        
        // Создаем поле комментария в админке
        woocommerce_wp_text_input( array(
            'id'          => 'shipping_comment_' . $method_id,
            'label'       => 'Комментарий для метода "' . $method->title . '"',
            'description' => 'Этот комментарий нужен только для служебного пользования и не будет отображаться на сайте.',
            'value'       => $comment,
        ) );
    }
}
add_action( 'woocommerce_shipping_init', 'add_shipping_comments' );

function save_shipping_comments() {
    // Получаем все методы доставки
    $shipping_methods = WC()->shipping->load_shipping_methods();
    
    // Цикл по всем методам доставки
    foreach ( $shipping_methods as $method ) {
        // Получаем ID метода
        $method_id = $method->id;
        
        // Сохраняем комментарий для метода доставки
        if( isset( $_POST['shipping_comment_' . $method_id] ) ) {
            update_option( 'shipping_comment_' . $method_id, wp_kses_post( $_POST['shipping_comment_' . $method_id] ) );
        }
    }
}
add_action( 'woocommerce_shipping_save_shipping_methods', 'save_shipping_comments' );
```

3. После этого сохраните файл functions.php.

Теперь в административной панели WordPress при редактировании методов доставки WooCommerce вы увидите поля для ввода комментариев. Комментарии будут сохранены и доступны для дальнейшего редактирования.

Убедитесь, что код правильно добавлен и сохранен, и проверьте, работает ли он в административной панели.
Похожие вопросы