web-dev-qa-db-fra.com

Comment ajouter du HTML personnalisé dans la barre d'administration wordpress?

Je souhaite ajouter du code HTML (pour afficher le nombre de types de publications dans la base de données). Wordpress est nouveau pour moi. Je ne connais pas beaucoup les points d'ancrage et les filtres.

Si je comprends bien, je dois faire le travail suivant -

  1. Besoin d'obtenir le nombre de messages (type XYZ) à partir de la base de données.
  2. ajoutez un crochet/filtre pour ajouter ces nombres en HTML de la barre d'administration.

Quelqu'un peut-il, s'il vous plaît, aidez-moi à comprendre le déroulement du processus et à coder pour ce travail?

Remarque: Je savais que ce type de question ne correspondait pas à la norme SO. Mais vraiment les gars, je n'ai pas beaucoup de connaissances sur ce travail.

Je veux quelque chose comme ça - enter image description here

Merci d'avance...!!!

5
Ishan Jain

Vous êtes sur la bonne voie pour le travail à accomplir, et WordPress est très simple à réaliser.

Le hook que vous recherchez s'appelle admin_bar_menu. Vous pouvez en savoir plus à ce sujet et sur la classe WP_Admin_Bar ici .

L’autre étape pour obtenir le décompte des publications peut être effectuée de différentes manières, mais j’ai utilisé WP_Query ci-dessous. Une autre classe puissante avec laquelle vous voudrez vous familiariser.

Voici un exemple de code qui vous conduira dans la bonne direction.

add_action( 'admin_bar_menu', 'wpse_admin_bar', 900 );
// The first argument is the name of the hook,
// the second is the callback function that you see below,
// and the 900 denotes the priority with which the hook is called
//This high number means this code will run later, and thus show up at the end of the list.

function wpse_admin_bar( $wp_admin_bar ){
    $args = array(
        //Type & Status Parameters
        'post_type'   => 'wpse_cpt',
        'post_status' => 'publish',
    );

    $wpse_cpt = new WP_Query( $args );

   $admin_bar_args = array(
      'id' => 'staff_count'
      ,'title' => 'XYZ Post:'.count($wpse_cpt->posts) // this is the visible portion in the admin bar.
      );

   $wp_admin_bar->add_node($admin_bar_args);
}
4
Jeremy Ross