Intereting Posts
По возрастанию имеет странные последствия для цикла wordpress Как разрешить перенос роли вручную без разрешения на публикацию Как получить статус инвентаризации woocommerce Дайте редакторам доступ к определенному плагину – включите «admin.php» в «edit.php» Когда модуль тестирует плагин, нужен ли плагин в каталоге wp-content / plugins теста WordPress? Настройка вывода метки / заголовка администратора nav_menu Как интегрировать кнопку Facebook Share без кода? Лучший плагин для изменения типов сообщений WordPress Multisite – Sub DIR Subsites Как разделять цикл в нескольких столбцах на странице архива Создание вложенных циклов форума в bbPress Query Top Set Пользовательская таксономия в заданный период времени Автоматическое обновление времени сбоя, которое удалила моя внешняя папка Как разрешить пользователям редактировать свои имена пользователей? Несколько экземпляров плагина nivo slider

Как передать переменные в аргумент функции, используя add_action

У меня есть файл plug.php test.php внутри моей плагина / папки, и я пытаюсь отправить электронное письмо с этого плагина.

У меня есть код, который теперь выглядит в моем плагине.

add_action('init', 'email_notifier', 10, 5); function email_notifier($type, $email, $subject, $body, $link){ // wp_mail(....) } 

Однако, похоже, нет способа передать внешние переменные функции email_notifier .

Я могу отправить электронное письмо, подобное этому

 add_action( 'init', 'email_notifier', 10, 2); function email_notifier() { // wp_mail( 'mail@example.com', 'subject', 'content' ); } 

Но это ограничивает меня динамической настройкой и передачей функции электронной почты / темы / содержимого.

Существует ли какое-либо обходное решение для этого

Solutions Collecting From Web of "Как передать переменные в аргумент функции, используя add_action"

Взгляните на этот пример:

 add_filter('some_hook', $callback = function( $arg ) use ( $values ){ //Some calculation here }); 

Вы можете установить аргументы таким образом, а также использовать предопределенные переменные, которые существуют вне области функций, используя термин use() .

Таким образом, вы можете отменить функцию, где бы вы ни хотели, выполнив следующие действия:

 remove_filter('some_hook', $callback);