我可以删除表wp_comments以防止任何人发表评论吗?

时间:2014-07-31 03:13:29

标签: wordpress

我在网上有一个Wordpress网站。一些垃圾邮件发送者在我的Wordpress上发布了许多垃圾评论我可以在我的Wordpress数据库中删除wp_comments表吗?我不希望任何人发表评论。当我删除wp_comments表时Wordpress站点会崩溃吗?如果我删除wp_comments表,当有人在我的文章上写评论,然后点击发布时,wordpress会在这种情况下崩溃吗? drop table wp_comments对我来说很好。

3 个答案:

答案 0 :(得分:0)

我建议您使用Akismet自动将评论过滤到那些可能是真实的内容中,而99%的内容可能只是垃圾链接到狡猾的网站而不是删除评论表wordpress ..

删除表可能会导致很多问题。但是使用像Akismet这样的插件会成为阻止垃圾评论的最佳解决方案

答案 1 :(得分:0)

我想这会导致很多问题/错误。最好从禁用插入注释的特定代码中删除注释。

您可以在任何找到的地方发表评论wp_insert_comment($data);这样您就可以维护现有代码,以防有一天您想要它。

答案 2 :(得分:0)

这是我过去使用的一大块代码。它会将用户重定向到您的评论部分,并在您的后端隐藏该评论部分。选择并选择您想要的部分,并将它们放在主题的functions.php文件中。

// 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');