如何删除WordPress默认评论系统

时间:2018-04-26 作者:shahrukh

您好,我想删除WordPress默认评论系统,我想改用facebook评论系统。谁能告诉我如何删除WordPress的默认评论系统。并且在帖子上保留旧评论。谢谢(请给我代码片段或教程参考,我是begginer。)

1 个回复
最合适的回答,由SO网友:demo7up 整理而成

将此代码添加到函数中。php它删除了Wordpress默认的注释挂钩。如果要重新启用注释,只需从函数中删除此代码即可。php

// Add to existing function.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\');
如果已经存在任何注释,可以使用phpMyAdmin或MySQL控制台从数据库中删除表本身。

TRUNCATE wp_commentmeta; 
TRUNCATE wp_comments;
使用起来可能更安全

DELETE FROM wp_comments;  
DELETE FROM wp_commentmeta;

结束