Deshabilita completamente los comentarios en la web, para todos los tipos de contenidos, tanto en el administrador de WordPress como en el frontend.
add_action('admin_init', function () {
// Redirigir a cualquier usuario que intente acceder a la página de comentarios
global $pagenow;
if ($pagenow === 'edit-comments.php') {
wp_safe_redirect(admin_url());
exit;
}
// Eliminar metabox de comentarios del dashboard
remove_meta_box('dashboard_recent_comments', 'dashboard', 'normal');
// Desactivar el soporte para comentarios y trackbacks en los tipos de post
foreach (get_post_types() as $post_type) {
if (post_type_supports($post_type, 'comments')) {
remove_post_type_support($post_type, 'comments');
remove_post_type_support($post_type, 'trackbacks');
}
}
});
// Cerrar los comentarios en el frontend
add_filter('comments_open', '__return_false', 20, 2);
add_filter('pings_open', '__return_false', 20, 2);
// Ocultar los comentarios ya existentes
add_filter('comments_array', '__return_empty_array', 10, 2);
// Eliminar la página de comentarios en el menú
add_action('admin_menu', function () {
remove_menu_page('edit-comments.php');
});
// Eliminar los enlaces de comentarios de la barra de administración
add_action('admin_bar_menu', function () {
remove_action('admin_bar_menu', 'wp_admin_bar_comments_menu', 60);
}, 0);