web-dev-qa-db-fra.com

Ajouter du contenu dans une page de type d'article personnalisée après le titre et avant les colonnes

J'ai trouvé ici sur WPSE que vous pouvez ajouter du contenu avant le titre du message dans la page de publication et dans les pages de type de publication personnalisée.

    add_action( 'load-edit.php', function(){

       $screen = get_current_screen();

        // Only edit post screen:
       if( 'edit-reservation' === $screen->id )
       {
            // Before:
            add_action( 'all_admin_notices', function(){
                echo '<p>Greetings from <strong>all_admin_notices</strong>!</p>';
            });

        }
    });

Ce qui fonctionne dans mon type de post personnalisé de réservation. Mais je me demande s’il est possible de produire du contenu après le titre, mais avant la table avec les types de publication personnalisés?

enter image description here

5
dingo_d

Vous pouvez essayer de "pirater" le filtre suivant dans la classe WP_List_Table:

/**
 * Filter the list of available list table views.
 *
 * The dynamic portion of the hook name, `$this->screen->id`, refers
 * to the ID of the current screen, usually a string.
 *
 * @since 3.5.0
 *
 * @param array $views An array of available list table views.
 */
 $views = apply_filters( "views_{$this->screen->id}", $views );

Exemple

Pour l'écran edit-post, le filtre est views_edit-post:

/**
 * Display HTML after the 'Posts' title
 * where we target the 'edit-post' screen
 */
add_filter( 'views_edit-post', function( $views )
{
    echo '<p>Greetings from <strong>views_edit-post</strong></p>';

    return $views;
} );

et cela affichera comme:

greetings

5
birgire

Vous pouvez le faire avec JavaScript.

add_action( 'all_admin_notices', function(){
    echo '<script>jQuery(document).ready(function($) {  $( "<p>Greetings from <strong>all_admin_notices</strong>!</p>" ).insertAfter( ".subsubsub" );});</script>';
} );
2
Charles Jaimet