Как разместить HTML под заголовком (пользовательский) обзор сообщений

Редактировать: Да, я знаю, я сам ответил на этот вопрос. Тем не менее, меня все еще интересуют другие решения и / или комментарии по тому, что я нашел. Так вы это сделаете? Есть ли другие способы?


Я хотел бы предоставить некоторое дополнительное описание и помощь на странице (т. edit.php Контекстные справки или вкладки справки) на странице обзора (т. edit.php ) для пользовательского типа сообщения.

Согласно edit.php (а также class-wp-list-table.php и class-wp-posts-list-table.php ) нет соответствующего крючка.

Итак, как я могу это сделать?

Несколько примечаний:

  • Я придумал решение, которое я бы назвал немного хакерским , поэтому я открыт для чистого решения (если оно есть);
  • Я отправлю свое решение в качестве ответа, чтобы вы могли прокомментировать это (и поэтому вопрос и ответ сохраняются отдельно);
  • Я знаю, что могу сделать это с помощью JavaScript / jQuery – но это тоже не чисто (IMO) …

Я вроде как чувствую, что мне не хватает чего-то очевидного, но, возможно, нет. Как насчет admin_notices , кажется очевидным выбором для меня. Существуют некоторые классы CSS-администратора, которые вы можете использовать, например, updated , error или update-nag , или вы можете, конечно, добавить свои собственные стили, например, спросить и ответить здесь или здесь .

Код:

 <?php function my_cpt_info() { if ('edit-my_cpt' === get_current_screen()->id) { ?> <div class="updated"> <p> <?php _e('Some information about my CPT...', 'my-text-domain'); ?> </p> </div> <?php } } // function my_cpt_info add_action('admin_notices', 'my_cpt_info'); ?> 

В настоящее время я делаю это:

  • захватить сообщение о массовом обновлении;
  • скорректировать счетчик для обновления ;
  • вставьте мой текст;
  • с приоритетом 0.

В коде это выглядит следующим образом:

 function my_cpt_info($messages) { if ('edit-my_cpt' === get_current_screen()->id) { global $bulk_counts; $bulk_counts['updated'] = 1; if (! is_array($messages)) $messages = array(); $messages['my_cpt']['updated'] = 'Whatever it is that I need to explain about this post type, I just do it right here...<br>'; return $messages; } } // function my_cpt_info add_filter('bulk_post_updated_messages', 'my_cpt_info', 0);