Snippets: Completely disable comments
Many WordPress websites these days aren’t designed to be blogs. The comments feature of blogs is great but it can create some headaches.
If you don’t use Comments then it is best to disable these complete – WordPress doesn’t offer an on/off switch for this unfortunately.
Adding the following PHP code to your preferred code plugin will disable all comment functions and remove any reference to comments dotted around your dashboard.
add_action('admin_init', function () { // Redirect any user trying to access comments page global $pagenow; if ($pagenow === 'edit-comments.php') { wp_safe_redirect(admin_url()); exit; } // Remove comments metabox from dashboard remove_meta_box('dashboard_recent_comments', 'dashboard', 'normal'); // Disable support for comments and trackbacks in post types 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'); } } }); // Close comments on the front-end add_filter('comments_open', '__return_false', 20, 2); add_filter('pings_open', '__return_false', 20, 2); // Hide existing comments add_filter('comments_array', '__return_empty_array', 10, 2); // Remove comments page in menu add_action('admin_menu', function () { remove_menu_page('edit-comments.php'); }); // Remove comments links from admin bar add_action('admin_bar_menu', function () { remove_action('admin_bar_menu', 'wp_admin_bar_comments_menu', 60); }, 0);
Author: admin
Uploaded: 4 October 2023