TechBlogSD - Все для WordPress и WEB разработки
WEB и WordPress инструкции, новости, обзоры тем и плагинов

Добавление примечаний к заказу WooCommerce в заполненное электронное письмо

93

Нет ничего лучше, чем иметь информацию о сделанном вами заказе относительно его статуса или любые другие данные, которые могут оказаться полезными для вашего заказа. По умолчанию WooCommerce хранит каждое действие, связанное с заказом, в базе данных. Эта серия действий доступна в администрировании, на боковой панели при редактировании заказа. Но у ваших клиентов нет доступа к этому списку действий. Хорошей новостью является то, что вы можете легко добавить его в любое электронное письмо, отправленное WooCommerce. В этом посте я покажу вам, как добавить в примечания к заказу полное электронное письмо (это письмо, отправленное, когда статус заказа помечен как завершенный). Но вы можете использовать этот метод для добавления заметок к заказу и в любые другие электронные письма.

Пользовательские шаблоны или хуки?

Напоминаем: все электронные письма в WooCommerce предоставляются с использованием шаблонов, и вы можете переопределить шаблоны по умолчанию, создав свои собственные шаблоны. В основном настраиваемый шаблон позволяет вам переопределить файлы WooCommerce по умолчанию и использовать вместо них свои собственные файлы. Вот краткое руководство, которое объяснит вам, как создавать собственные шаблоны: http://docs.woothemes.com/document/template-structure/.

Вы можете добавлять примечания к заказу в пользовательские шаблоны, но я хотел бы показать вам другой способ сделать это с помощью крючка. Идея состоит в том, чтобы не использовать пользовательские шаблоны, а использовать файл functions.php только в папке вашей темы.

Примечания к заказу – это комментарии WordPress

Примечания к заказу – это комментарии WordPress, имеющие определенный тип «order_note», поэтому вы можете использовать класс WordPress WP_Query, применяемый к комментариям с помощью функции get_comments().

Хук, который нам нужно использовать, – это действие под названием «woocommerce_email_order_meta». Идея состоит в том, чтобы вызвать пользовательскую функцию, когда это действие загружается в процессе WooCommerce.

Использование get_comments () упрощает способ получения примечаний к заказу, нам просто нужно убедиться, что мы хотим перечислить комментарии, связанные с определенным заказом, используя идентификатор сообщения и атрибут комментария «одобрить», что означает, что комментарий проверяется (в данном случае WooCommerce).

Код

Вот код, который нужно разместить в файле functions.php в папке вашей темы:

add_action( 'woocommerce_email_order_meta', 'woo_add_order_notes_to_email' ); function woo_add_order_notes_to_email() { global $woocommerce, $post; $args = array( 'post_id' => $post->ID, 'approve' => 'approve', 'type' => 'order_note' ); $notes = get_comments( $args ); echo '<h2>'. __( 'Order Notes', 'woocommerce' ). '</h2>'; echo '<ul class="order_notes">'; if ($notes) { foreach( $notes as $note) { $note_classes = get_comment_meta( $note->comment_ID, 'is_customer_note', true )? array( 'customer-note', 'note' ): array( 'note' ); ?> <li rel="comment_ID) ; ?>" class=""> <div class="note_content"> comment_content) ) ); ?> </div> <p class="meta"> comment_date_gmt ), current_time( 'timestamp', 1) ) ); ?> </p> </li> <?php } } else { echo '<li>'. __( 'There are no notes for this order yet.', 'woocommerce' ). '</li>'; } echo '</ul>'; }

Как видите, этот код довольно прост, в нем нет ничего сложного, поэтому вы можете легко его настроить. Обратите внимание на использование некоторых хороших функций, таких как human_time_diff (), wptexturize () или wp_kses_post ().

Что ж, надеюсь, вам понравился этот пост, пожалуйста, оставьте комментарий в форме ниже, я бы хотел получить ваш отзыв об этом!

Источник записи: https://www.wpexplorer.com

Leave A Reply

Этот веб-сайт использует файлы cookie для улучшения вашего опыта. Мы предполагаем, что вы согласны с этим, но вы можете отказаться, если хотите. ПринимаюПодробнее