Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save DeveloperWil/3b63c1fc14e3debc7f86c2a5f9e18ab8 to your computer and use it in GitHub Desktop.
Save DeveloperWil/3b63c1fc14e3debc7f86c2a5f9e18ab8 to your computer and use it in GitHub Desktop.
WordPress: Remove All Comments Support
/**
* Removes commenting from WordPress
*
* Redirects edit comment URL to admin URL
* Removes comment meta box
* Removes comments and trackback support for all post types
*/
function zpd_remove_commenting () {
// 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 );
}
add_action( 'admin_init', 'zpd_remove_commenting');
/**
* Remove the admin page for comments
*/
function zpd_remove_comments_admin_page() {
remove_menu_page( 'edit-comments.php' );
}
add_action( 'admin_menu', 'zpd_remove_comments_admin_page' );
/**
* Remove all comments links from the admin bar
*/
function zpd_remove_admin_bar_comments() {
if ( is_admin_bar_showing() ) {
remove_action( 'admin_bar_menu', 'wp_admin_bar_comments_menu', 60 );
}
}
@DeveloperWil
Copy link
Author

Paste the code in your theme's functions.php file

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment