Как добавить текст или HTML на страницу «Заказ принят»

В этом уроке я покажу вам несколько способов, как вы сможете добавить какой-нибудь произвольный текст или HTML-код на страницу «Спасибо» в WooCommerce.

И прежде, чем мы приступим, я бы хотел порекомендовать вам свой видеокурс по WooCommerce, который доступен по этой ссылке.

Начнём вот с такого нехитрого примера:

Произвольное сообщение на странице Спасибо в WooCommerce
Этот текст мы добавили при помощи хука woocommerce_before_thankyou в теме Storefront, готовый код чуть ниже.

Для того, чтобы добавить текст как на скриншоте, вы можете использовать код:

add_action( 'woocommerce_before_thankyou', 'truemisha_before_thankyou', 25 );
 
function truemisha_before_thankyou( $order_id ) {
	echo '<h2>20% на следующую покупку!</h2>';
	echo '<p>Мы благодарим вас за покупку и поэтому дарим вам промокод "<strong>PROMO20</strong>" на получение 20% скидки на вашу следующий заказ!</p>';
}

А вот и полный набор хуков изменения и добавления текста на странице «Заказ принят»:

  • woocommerce_before_thankyou – ну этот мы и использовали с вами в примере – позволяет добавить текст или HTML прямо в самом начале страницы «Спасибо», сразу после заголовка.
  • woocommerce_thankyou – то же самое, только в самом конце странице.
  • woocommerce_thankyou_ПЛАТЁЖНЫЙ ШЛЮЗ, например woocommerce_thankyou_paypal – позволяет вывести что-либо в конце страницы «Спасибо» в зависимости от используемого метода оплаты покупателем, как узнать ярлык метода оплаты вы можете найти в этом уроке.

Каждый из перечисленных выше экшн-хуков имеет один и тот же параметр – $order_id (ID заказа).

Как изменить или удалить текст «Спасибо, ваш заказ был принят»

Ещё на самом первом скриншоте этого урока вы могли заметить, что сразу после нашего добавленного текста есть ещё какая-то строчка «Спасибо, ваш заказ был принят», так вот, это автоматический текст WooCommerce, который был в шаблоне, но благодаря фильтр-хуку woocommerce_thankyou_order_received_text мы можем изменить его или удалить.

Меняем текст:

add_filter( 'woocommerce_thankyou_order_received_text', 'truemisha_thank_you_text', 25 );
 
function truemisha_thank_you_text( $order ) { // объект заказа доступен внутри
	return 'Спс!';
}

Если хотите удалить, то можете просто возвратить пустую стркоу, но к сожалению оборачивающие этот текст теги <p> никуда не денутся, возможно придётся применить CSS.

Миша

Впервые познакомился с WordPress в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.

Пишите, если нужна помощь с сайтом или разработка с нуля.

Комментарии — 4

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

Миша Рудрастых и WordPress

Полезности из мира WordPress и жизни студии.

Мой телеграм-канал