Si vous n’avez pas besoin des widgets par défaut de WordPress, vous pouvez simplement les désactiver pour éviter qu’ils ne soient chargés par WordPress et économiser quelques requêtes.

Si vous ne savez pas ce que sont les widgets, vous pourrez tout découvrir en vous rendant sur cet article.

Pour ce faire, copiez-collez le code suivant dans le fichier functions.php de votre thème enfant:

add_action( 'widgets_init', 'wpm_remove_default_widgets' );

function wpm_remove_default_widgets() {

  unregister_widget( 'WP_Widget_Pages' ); // Le widget Pages
  unregister_widget( 'WP_Widget_Calendar' ); // Le widget Calendrier
  unregister_widget( 'WP_Widget_Archives' ); // Le widget Archives
  unregister_widget( 'WP_Widget_Meta' ); // Le widget Meta
  unregister_widget( 'WP_Widget_Search' ); // Le widget Rechercher
  unregister_widget( 'WP_Widget_Text' ); // Le widget de texte
  unregister_widget( 'WP_Widget_Media_Audio' ); // Le widget Audio
  unregister_widget( 'WP_Widget_Media_Image' ); // Le widget Image
  unregister_widget( 'WP_Widget_Media_Video' ); // Le widget Vidéo
  unregister_widget( 'WP_Widget_Custom_HTML' ); // Le widget HTML personnalisé
  unregister_widget( 'WP_Widget_Categories' ); // Le widget catégories
  unregister_widget( 'WP_Widget_Recent_Posts' ); // Le widget articles récents
  unregister_widget( 'WP_Widget_Recent_Comments' ); // Le widget Commentaires récents
  unregister_widget( 'WP_Widget_RSS' ); // Le widget RSS
  unregister_widget( 'WP_Widget_Tag_Cloud' ); // Le widget nuage d'étiquettes
  unregister_widget( 'WP_Nav_Menu_Widget' ); // Le widget menu personnalisé

}

Et voilà, tous ces widgets ne seront maintenant plus chargés sur votre site WordPress.

Chaque ligne correspondant à un widget, vous pouvez supprimer (ou commenter) les lignes des widgets que vous souhaitez conserver.

La liste complète des classes des widgets par défaut de WordPress est disponible sur Github.

En fait, il s’agit du fichier source nommé default-widgets.php localisé dans le répertoire wp-includes dont le rôle est de charger les widgets.

Fichier default-widgets-php de WordPress

Comme vous pouvez le constater, chaque classe est indiquée en commentaire au-dessus des fonctions require_once().

Si vous regardez bien le snippet, deux classes de widget n’ont pas été incluses. Voyez-vous lesquelles ?

En tout cas, nous espérons que ce morceau de code vous a été utile 🙂