Я попробовал несколько методов, включая хук «publish_post». Хук срабатывает, когда я помещаю var_dump('bla');exit();, я вижу, что это работает. Я думаю, что причина, по которой admin_notices не отображается, заключается в том, что страница обновляется. Так что, если бы было что-то вроде «after_publish_post», это было бы здорово, но я не могу его найти.
Я также попробовал кое-что, что нашел в аналогичный вопрос:
Код: Выделить всё
if( ( $_POST['post_status'] == 'publish' ) && ( $_POST['original_post_status'] != 'publish' ) ) { echo "New post!"; exit();}
--
На данный момент у меня есть:
Код: Выделить всё
add_action('publish_post', array($this,'onInsertPost')); //does work, function gets triggered
public function onInsertPost($post_id, $post, $update) {
add_action( 'admin_notices', array($this, 'info_text_news') );
}
public function info_text_news() {
$class = 'notice notice-info';
$message = __( 'My message', 'admin_notice' );
printf( '
%2$s
', esc_attr( $class ), $message);
Как я уже говорил ранее, весь этот код работает, но в целом уведомление не появляется. Думаю, из-за обновления страницы после нажатия кнопки публикации.
Подробнее здесь: https://stackoverflow.com/questions/581 ... -wordpress