/* * Remove Commenting from Wordpress * Source: https://www.dfactory.eu/wordpress-how-to/turn-off-disable-comments/ * Note: I've expanded upon the source so please use the following. */ // Disable support for comments and trackbacks in post types function disable_comments_post_types_support() { $post_types = get_post_types(); foreach ($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'); } } } add_action('admin_init', 'disable_comments_post_types_support', 10); // Remove meta boxes for comments, reviews and trackbacks in post types function remove_comments_metabox_post_types() { $post_types = get_post_types(); foreach ($post_types as $post_type) { remove_meta_box('commentsdiv', $post_type, 'normal'); remove_meta_box('commentsstatusdiv', $post_type, 'normal'); remove_meta_box('trackbacksdiv', $post_type, 'normal'); } } add_action('add_meta_boxes', 'remove_comments_metabox_post_types', 99); // Close comments on the front-end function disable_comments_status() { return false; } add_filter('comments_open', 'disable_comments_status', 20, 2); add_filter('pings_open', 'disable_comments_status', 20, 2); // Hide existing comments function disable_comments_hide_existing_comments($comments) { $comments = array(); return $comments; } add_filter('comments_array', 'disable_comments_hide_existing_comments', 10, 2); // Remove comments page in menu function disable_comments_admin_menu() { remove_menu_page('edit-comments.php'); remove_submenu_page('options-general.php', 'options-discussion.php'); } add_action('admin_menu', 'disable_comments_admin_menu'); // Remove comments link in admin bar function remove_comments_admin_bar_links() { global $wp_admin_bar; $wp_admin_bar->remove_menu('comments'); } add_action('wp_before_admin_bar_render', 'remove_comments_admin_bar_links'); // Redirect any user trying to access comments page function disable_comments_admin_menu_redirect() { global $pagenow; if ($pagenow === 'edit-comments.php' || $pagenow === 'options-discussion.php') { wp_redirect(admin_url()); exit; } } add_action('admin_init', 'disable_comments_admin_menu_redirect'); // Remove comments metabox from dashboard function disable_comments_dashboard() { remove_meta_box('dashboard_recent_comments', 'dashboard', 'normal'); } add_action('admin_init', 'disable_comments_dashboard'); // Remove comments links from admin bar function disable_comments_admin_bar() { if (is_admin_bar_showing()) { remove_action('admin_bar_menu', 'wp_admin_bar_comments_menu', 60); } } add_action('init', 'disable_comments_admin_bar'); // Remove Recent Comments Widget function unregister_comments_widget() { unregister_widget('WP_Widget_Recent_Comments'); } add_action('widgets_init', 'unregister_comments_widget', 11); ?>