Last active
October 29, 2024 22:04
-
-
Save mattclements/eab5ef656b2f946c4bfb to your computer and use it in GitHub Desktop.
Wordpress Disable Comments (add to function.php)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
add_action('admin_init', function () { | |
// Redirect any user trying to access comments page | |
global $pagenow; | |
if ($pagenow === 'edit-comments.php') { | |
wp_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('init', function () { | |
if (is_admin_bar_showing()) { | |
remove_action('admin_bar_menu', 'wp_admin_bar_comments_menu', 60); | |
} | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
It's better to use this code taken from plugin Disable Comments (mu plugin version). Most up-to-date code.
https://gist.github.com/doiftrue/ab931c1d866cb113b4ff318a5faeb3b3