Intereting Posts
Любой Мобильный Тема Switcher – Тема не завершена (отсутствует стили) Плагин WordPress со своим собственным сайтом / темой Почему этот код jquery / java-скрипта не работает в мобильных устройствах? WP застрял с запросом на MySQL, когда сайт возобновлен Невозможно сохранить значение метаданных, если заголовок не установлен WP CLI разрешает поля? Пользовательская разбивка на страницы в коротком коде с WP_Query Показывать изображение рядом с автором комментария, если оно имеет определенную роль Класс Hfeed для всех необходимых страниц выберите один вал, хотя таблица в wordpress Помогите написать пользовательскую функцию с переписывающей конечной точкой, которая создает страницу из динамического содержимого edit-tags.php в меню администратора плагинов скрывается, когда активна страница дочерние комментарии не отображаются как вложенные Каков оптимальный способ отфильтровывать подстраницы от администратора? Добавление Action Hooks в родительскую тему для упрощения настройки детской темы

Теги WordPress Post (get_the_tags & has_tag)

У меня есть плагин с вызовом action_post action. В обратном вызове мне нужно проверить наличие тега. Я пробовал использовать has_tag и перечислять теги сообщения с помощью get_the_tags. Во всех случаях нет тегов, когда на самом деле сообщение имеет тег. Я могу отредактировать сообщение на админ-сайте и увидеть тег. Есть ли что-то еще, что мне нужно сделать, чтобы получить теги сообщения?

Я действительно отлаживал это и нашел проблему. Он напрямую связан с созданием сообщения через API REST.

Я обнаружил, что, когда сообщение создается через REST API, что обратные вызовы hook происходят в другом порядке из сообщения, созданного с помощью пользовательского интерфейса администратора. В частности, когда API REST вызывает wp_insert_post, данные не содержат никаких тегов, передаваемых через данные JSON. Это означает, что если плагин имеет набор действий publish_post и должен запрашивать теги для нового сообщения, он всегда будет терпеть неудачу. Установка действия set_object_terms и запросов для тегов дает правильный результат. Проблема в том, что действие set_object_terms происходит ПОСЛЕ действия publish_post. Ожидается, что когда publish_post вызывается, что теги доступны для нового сообщения.