Как использовать do_action() с параметром
Я пытаюсь вызвать действие в functions.php с помощью функции do_action()
, но мне, похоже, нужен атрибут.
Следующий код
do_action( 'really_simple_share button="facebook_like"');
не работает...
Можете подсказать правильный способ, как это сделать (я пробовал много других вариантов, но они тоже не работают).
Правильный способ — передать первый аргумент в виде уникальной строки, которая служит идентификатором действия, а затем любые дополнительные аргументы
do_action('unique_action_tag', $parameter1, $parameter2,,,, & так далее);
Чтобы привязать функции к этому действию, нужно сделать следующее:
// 10 — это приоритет, чем выше, тем раньше выполнится
// 2 — количество аргументов, которые функция может принять
add_action('unique_action_tag', 'my_custom_function', 10, 2)
function my_custom_function($param1, $param2) {
// выполнить что-то
}

Ты имеешь в виду $button = 'facebook_like'; do_action('really_simple_share', $button);
. Затем в "functions.php" add_action('really_simple_share', 'my_function');
function my_function($button) {
// сделать что-то
}

Спасибо - это помогло. Я нашел документацию здесь: https://developer.wordpress.org/reference/functions/do_action/

Ознакомьтесь с этим тикетом, там приведен примерный подход для обхода этой проблемы.
