Can i drop table wp_comments to prevent anyone’s comment?

I have a WordPress site on the web. Some spammers post many garbage comments on my WordPress. Can I drop the wp_comments table in my WordPress database? I don’t want anyone to post comments. Will the WordPress site crash when I drop the wp_comments table?If i drop the wp_comments table, when someone write comment on my article, and click to post it ,will the wordpress be crashed at this situation?
drop table wp_comments works fine for me.

Related posts

Leave a Reply

3 comments

  1. This is a chunk of code that I’ve used in the past. It will redirect users away from your comments section, and hide that comments section on your backend. Pick and choose which pieces you want, and place them in your theme’s functions.php file.

    // Disable support for comments and trackbacks in post types
    function df_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', 'df_disable_comments_post_types_support');
    
    // Close comments on the front-end
    function df_disable_comments_status() {
        return false;
    }
    add_filter('comments_open', 'df_disable_comments_status', 20, 2);
    add_filter('pings_open', 'df_disable_comments_status', 20, 2);
    
    // Hide existing comments
    function df_disable_comments_hide_existing_comments($comments) {
        $comments = array();
        return $comments;
    }
    add_filter('comments_array', 'df_disable_comments_hide_existing_comments', 10, 2);
    
    // Remove comments page in menu
    function df_disable_comments_admin_menu() {
        remove_menu_page('edit-comments.php');
    }
    add_action('admin_menu', 'df_disable_comments_admin_menu');
    
    // Redirect any user trying to access comments page
        function df_disable_comments_admin_menu_redirect() {
        global $pagenow;
        if ($pagenow === 'edit-comments.php') {
            wp_redirect(admin_url()); exit;
        }
    }
    add_action('admin_init', 'df_disable_comments_admin_menu_redirect');
    
    // Remove comments metabox from dashboard
    function df_disable_comments_dashboard() {
        remove_meta_box('dashboard_recent_comments', 'dashboard', 'normal');
    }
    add_action('admin_init', 'df_disable_comments_dashboard');
    
    // Remove comments links from admin bar
    function df_disable_comments_admin_bar() {
        if (is_admin_bar_showing()) {
            remove_action('admin_bar_menu', 'wp_admin_bar_comments_menu', 60);
        }
    }
    add_action('init', 'df_disable_comments_admin_bar');
    
  2. I would imagine that this will cause many problems/errors. You will be better off disabling comments from the specific code that inserts comments.

    You can just comment out anywhere you find wp_insert_comment($data); This will allow you to maintain the existing code just in case you want it back someday.

  3. I would suggest you to use Akismet to automate the filtering of comments into those that are likely to be genuine and the 99% that sadly are no more than spam links to dodgy sites instead of dropping the comment table from the wordpress..

    Dropping of table can sometime cause many issues ..But using a plugin like Akismet woulld be the best solution for preventing spam comments