Как я могу вставить пост произвольного типа в ловушку WooCommerce на основе предпочтительной ловушки пользователя? - PullRequest
0 голосов
/ 18 июня 2020

В качестве быстрого «пластыря» для чего-то я помогал клиенту добавить немного временного текста в ловушку woocommerce_before_checkout_form в кассе WooCommerce, добавляя этот код в functions.php:

add_action( 'woocommerce_before_checkout_form', 'wci_add_checkout_notice_before_checkout', 12 ); 
function wci_add_checkout_notice_before_checkout() {
    echo 'This is the content to insert.';
}

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

Я создал плагин и получил его, чтобы позволить пользователю создавать собственный тип сообщения, который можно редактировать в редакторе блоков. Что я не могу понять, так это то, какие документы / учебные пособия следует начать читать, чтобы выяснить, как лучше всего позволить пользователю указать , где в корзине или кассе должен быть вставлен конкретный контент сообщения.

Например, выпадающий список на правой боковой панели редактора блоков с понятными терминами, такими как «Форма до оформления заказа» и «После корзины» и т. Д. c. А затем каким-то образом передать идентификатор сообщения и фактическое имя ловушки на основе выбора пользователем woocommerce_before_checkout_form или woocommerce_after_cart в качестве аргументов плагину для рендеринга.

Но где и как мне разместить это раскрывающееся меню в редакторе блоков? Или мне следует научить пользователя использовать вместо этого настраиваемые поля? Что мне делать оттуда, чтобы передать эту информацию в плагин для рендеринга сообщения в хуки?

Это та часть, где я не очень хорошо разбираюсь в программировании плагинов WordPress, поэтому приветствую любую помощь, указывающую мне в правильном направлении.

Полный код находится в репозитории publi c GitHub по адресу https://github.com/crobertwatson/woo-content-inserter. Маги c в настоящее время все в https://github.com/crobertwatson/woo-content-inserter/blob/master/woo-content-inserter.php

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...