Skip to content

Instantly share code, notes, and snippets.

@endurtech
Last active January 11, 2023 21:13
Show Gist options
  • Save endurtech/7e811dc526e48dfdcbfd1c237694078e to your computer and use it in GitHub Desktop.
Save endurtech/7e811dc526e48dfdcbfd1c237694078e to your computer and use it in GitHub Desktop.
The following snippets should help you disable commenting within WordPress.
<?php
// Disable Commenting in WordPress
// https://endurtech.com/how-to-completely-disable-comments-in-wordpress/
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 wp-admin 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