Отображение последнего примечания к заказу администратора WooCommerce в истории заказов клиентов

Я хочу отобразить примечание к заказу прошлой, которое в настоящее время можно просмотреть только через администратора в Woocommerce, на стороне клиента в их истории заказов.

Чтобы они могли просмотреть номер отслеживания, который мы добавляем в после, заказ считается выполненным.

Отображение последнего примечания к заказу администратора WooCommerce в истории заказов клиентов

Отображение последнего примечания к заказу администратора WooCommerce в истории заказов клиентов

https://example.com/my-account/view-order/135/

Мы добавляем примечание для клиента, сначала установив заказ как ЗАВЕРШЕННЫЙ через Woocommerce API, а затем добавив примечание к заказу со ссылкой для отслеживания. Таким образом, номер отслеживания всегда будет последним элементом.

Как я могу отобразить примечание к последнему заказу в истории заказов клиента? Кажется, не существует плагинов для отображения примечаний к заказу на стороне клиента.

Идеальный результат:

Отображение последнего примечания к заказу администратора WooCommerce в истории заказов клиентов

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
3
0
2 580
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Следующее будет отображать последнее примечание к заказу администратора на страницах заказов просмотра моей учетной записи:

add_filter( 'woocommerce_get_order_item_totals', 'account_view_order_last_order_note', 10, 3 );
function account_view_order_last_order_note( $total_rows, $order, $tax_display ){
    // For "completed" orders on my account view order pages
    if ( $order->has_status('completed')  && is_wc_endpoint_url( 'view-order' ) ){

        // Get last order note
        $latest_notes = wc_get_order_notes( array(
            'order_id' => $order->get_id(),
            'limit'    => 1,
            'orderby'  => 'date_created_gmt',
        ) );

        $latest_note = current( $latest_notes );

        if ( isset( $latest_note->content ) ) {
            // Add a new row for tracking
            $total_rows['order_tracking'] = array(
                'label' => __('Tracking:','woocommerce'),
                'value' => $latest_note->content
            );
        }
    }

    return $total_rows;
}

Код находится в файле function.php вашей активной дочерней темы (или активной темы). Проверено и работает.

Вот CSS, чтобы убедиться, что любой URL-адрес отслеживания имеет строчные буквы .woocommerce-MyAccount-content > section.woocommerce-order-details > table > tfoot > tr:nth-child(4) > td > p > a { text-transform: lowercase; }

Gracie 23.04.2019 23:15

@Loic Есть ли способ отобразить их все, но только сделанные администратором, а не системой?

Vladimir Kyatipov 02.04.2021 17:11

@ВладимирКятипов Да можно…

LoicTheAztec 02.04.2021 18:27

Другие вопросы по теме