У меня на блоге уже есть уроки, в которых я показывал, как добавлять какой-то произвольный текст или HTML в письма клиентам в WooCommerce. Также мы пробовали изменять темы писем, добавляя в них имя клиента.
Но дело в том, что иногда бывает нужно прикрепить к письмам какой-либо PDF-документ. Но стандартными настройками WooCommerce в админке этого не достичь. Попробуем достигнуть это маленьким сниппетом кода.
Также хочу порекомендовать вам свой видеокурс по WooCommerce, где мы создаём тему для интернет-магазина на основе готовой вёрстки.
Куда вы хотите его загрузить – зависит от вас. Однако я рекомендую попробовать это сделать прямо через раздел Медиафайлы в админке.
Для того, чтобы узнать ID, вы можете перейти в редактирование вашего файла и обнаружить его в строке URL, смотрите на скриншоте ниже:
И теперь мы можем использовать его в сниппете ниже для прикрепления к письмам, например в данном примере это письма о новом заказе и об обработке заказа:
/** * @snippet Прикрепляем файл к письму о новом заказе и об обработке заказа * @author Миша Рудрастых * @url https://misha.agency/woocommerce/kak-prikrepit-fajl-k-email.html */ add_filter( 'woocommerce_email_attachments', 'truemisha_file_attachment_in_emails', 25, 4 ); function truemisha_file_attachment_in_emails( $attachments, $email_id, $order, $email ) { $file_id = 132; // тут указываем ID нашего файла вложения $email_ids = array( 'new_order', 'customer_processing_order' ); // к каким емейлам прикрепить if ( in_array ( $email_id, $email_ids ) ) { $attachments[] = get_attached_file( $file_id ); } return $attachments; }
section=wc_email_customer_processing_order
, значит ID письма customer_processing_order
.Чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или войдите.
Высока вероятность, что так письмо улетит в спам из-за прикрепленных файлов.
Ну тут на самом деле от других факторов ещё зависит, таких как dkim подпись и т д