Где ошибка в do_action?

Версия Wordpress: 5.3.2
Версия PHP: 7.4.2

Подскажите, что не так:
Функция:
add_action( 'fff', 'do_fff' );
function do_fff(){echo '123';}


И хук:
<?php echo '<div id="fff">'. do_action("fff") .'</div>'; ?>


Если вызываю так, то работает:
<?php do_action("fff"); ?>

Что не так при вставке в тег div, пробовал echo и return, все равно не вставляется.
  • Вопрос задан
  • 63 просмотра
Решения вопроса 2
godsplane
@godsplane
Попробуйте так
<div id="fff"><? do_action("fff") ?></div>
Ответ написан
Код синтаксически верен.
проверил, на wp 5.3.2 , php (7.0.33, 7.2.25, 7.3.12, 7.4.0). Работает на ура.

С другой стороны, семантически это не верно. Правильнее будет вызвать apply_filters(...).
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы