Изменить CSS только для уведомления о новом заказе WooCommerce, отправленного администраторам

Я хочу изменить дизайн таблицы заголовков в уведомлениях о новых заказах только для моих администраторов. Электронная почта клиентов не должна быть затронута. Код, который у меня есть, приведен ниже, но, похоже, он не хочет работать. Любая помощь будет принята с благодарностью.

 add_filter( 'woocommerce_email_styles', 'add_css_to_new_order_email', 9999, 2 );

function add_css_to_new_order_email( $css, $email ) { 
   if ( $email->id == 'new_order' && $email->recipient == 'admin' ) {
      $css .= '
         #header_wrapper { background-color: #000!important; }
         h1 { color: #000!important; }
      ';
   }
   return $css;
}

Вы проверили, что условия действительно выполняются? Что произойдет, если вы добавите CSS без каких-либо условий?

CBroe 30.05.2024 14:55
Стоит ли изучать 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 и хотите разрабатывать...
1
1
50
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

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

В вашем заявлении IF всегда будет $email->recipient == 'admin', поскольку вам нужно определить настоящий адрес электронной почты администратора.

Поскольку уведомление по электронной почте о новом заказе всегда отправляется только администраторам (но не клиенту), вам не нужен false в вашем $email->recipient == 'admin' заявлении.

Попробуйте следующее:

add_filter( 'woocommerce_email_styles', 'add_css_to_new_order_email', 20, 2 );
function add_css_to_new_order_email( $css, $email ) { 
    if ($email->id === 'new_order') {
        $css .= ' #header_wrapper { background-color: #000 !important; } 
        h1 { color: #000 !important; }';
    } 
    return $css;
}

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


Связанный:

Как всегда спасибо @LoictTheAztec. Кажется, я действительно запутался с новым заказом (администратор) и полученным заказом по электронной почте, отправленной клиенту. Если новый заказ предназначен только для администраторов, то какой идентификатор у клиента, обращающегося к электронной почте? Думаю, я предполагал, что цели new_order как идентификаторы, которые я нашел в списке:

Acephalia 30.05.2024 17:12

Да, видел это и упомянул об этом. Я предполагаю, что customer_processing_order — это первое электронное письмо, отправленное клиенту. И да, я знаю, что делать. Я всегда отмечаю свои ответы и ставлю плюсы, прошу прощения, если что-то пропустил в прошлом. Просто не было возможности добраться до компьютера и проверить код :) Еще раз спасибо!

Acephalia 30.05.2024 17:46

@Acephalia Для первого электронного письма, отправленного покупателю. Это зависит от способа оплаты, использованного для заказа, поэтому идентификатор электронной почты может быть customer_on_hold_order или customer_processing_order или даже customer_completed_order в некоторых случаях.

LoicTheAztec 30.05.2024 17:50

Да, теперь это имеет смысл. Я вообще-то с этим сошел с ума >.< Ценю вас!

Acephalia 30.05.2024 17:58

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