peterwesterlund
  • 0
Новичок

Есть ли ЛЮБОЙ способ полностью удалить функцию и раздел комментариев?

  • 0

Я не хочу, чтобы выполнялись какие-либо запросы комментариев. Я ничего не хочу о комментариях, которые будут отображаться в административной области WordPress.

Возможно ли это каким-либо образом?

РЕДАКТИРОВАТЬ: Удалите все ссылки на комментарии из панели администратора и из всего бэкэнд-раздела.

Share
  1. Просто обратите внимание, что вам придется вручную удалить код из ваших файлов шаблонов, так как его невозможно скрыть с помощью кода оттуда. Я так думаю, если я ошибаюсь, кто-то поправит меня.

    • 0
  2. Вот список всех приведенных выше ответов и удаление ссылки на панель администратора. Просто добавьте его в файл функций вашей темы или сделайте его плагином. Я отмечу это как вики сообщества, поскольку все отвечают правильно, просто никто не добавил все это вместе.

    <?php
    // Removes from admin menu
    add_action( 'admin_menu', 'my_remove_admin_menus' );
    function my_remove_admin_menus() {
        remove_menu_page( 'edit-comments.php' );
    }
    // Removes from post and pages
    add_action('init', 'remove_comment_support', 100);
    
    function remove_comment_support() {
        remove_post_type_support( 'post', 'comments' );
        remove_post_type_support( 'page', 'comments' );
    }
    // Removes from admin bar
    function mytheme_admin_bar_render() {
        global $wp_admin_bar;
        $wp_admin_bar->remove_menu('comments');
    }
    add_action( 'wp_before_admin_bar_render', 'mytheme_admin_bar_render' );
    ?>
    
    • 0
  3. Чтобы удалить меню «Комментарии»:

    add_action( 'admin_init', 'my_remove_admin_menus' );
    function my_remove_admin_menus() {
        remove_menu_page( 'edit-comments.php' );
    }
    
    • 0
  4. Это должно удалить поддержку комментариев на вашем сайте:

    add_action('admin_menu', 'remove_comment_support');
    
    function remove_comment_support() {
        remove_post_type_support( 'post', 'comments' );
        remove_post_type_support( 'page', 'comments' );
    }
    

    Однако я не знаю, скроет ли он каждое упоминание о комментариях в разделе администратора. Поле «Прямо сейчас» на панели инструментов в основном жестко закодировано, поэтому вам придется скрыть это поле или придумать какой-нибудь хакер, чтобы отфильтровать строку «Комментарии». Но он должен удалить текст «комментариев» везде, о чем я могу думать.

    • 0
  5. // 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');
    

    Источник

    • 0
  6. Это не удалит его из вашей разметки как таковой, но вы можете легко скрыть ссылку панели администратора WP 3.1 (как визуально, так и из программ чтения с экрана), добавив следующую строку в CSS вашей темы:

    li#wp-admin-bar-comments { display: none; visibility: hidden; }

    • 0
  7. Есть готовое решение, которое делает именно это. Это плагин от Frank Bültge

    Документы: http://wpengineer.com/2230/removing-comments-absolutely-wordpress/

    Загрузка плагина: https://github.com/bueltge/Remove-Comments-Absolutely

    Просто установите, и все. нет конфига.

    С WP 3.5 работает нормально.

    • 0

Оставить ответ

You must login to add an answer.