¿Hay ALGUNA forma de eliminar completamente la función y sección de comentarios?

5 mar 2011, 10:20:03
Vistas: 43.6K
Votos: 34

No quiero que se ejecuten consultas de comentarios. No quiero que se muestre nada relacionado con comentarios en el área de administración de WordPress.

¿Es esto posible de alguna manera?

EDICIÓN: Eliminar todos los enlaces a los comentarios de la barra de administración y toda la sección del backend.

1
Comentarios

Nota: tendrás que eliminar manualmente el código de tus archivos de plantilla, ya que no hay forma de ocultarlo con código desde allí. Creo que es así, si estoy equivocado que alguien me corrija.

xLRDxREVENGEx xLRDxREVENGEx
22 may 2011 18:09:10
Todas las respuestas a la pregunta 6
0
66

Aquí hay una lista de todas las respuestas anteriores y la eliminación del enlace de la barra de administración. Solo agrégalo al archivo de funciones de tu tema o conviértelo en un plugin. Lo marcaré como un wiki de la comunidad ya que todas las respuestas son correctas, solo que nadie las reunió todas juntas.

<?php
// Elimina del menú de administración
add_action( 'admin_menu', 'my_remove_admin_menus' );
function my_remove_admin_menus() {
    remove_menu_page( 'edit-comments.php' );
}
// Elimina de entradas y páginas
add_action('init', 'remove_comment_support', 100);

function remove_comment_support() {
    remove_post_type_support( 'post', 'comments' );
    remove_post_type_support( 'page', 'comments' );
}
// Elimina de la barra de administración
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' );
?>
22 may 2011 18:02:36
1
15

Para eliminar el menú de Comentarios:

add_action( 'admin_init', 'my_remove_admin_menus' );
function my_remove_admin_menus() {
    remove_menu_page( 'edit-comments.php' );
}
5 mar 2011 14:50:35
Comentarios

Genial. ¿Y desde el nuevo panel superior de WP 3.1?

Peter Westerlund Peter Westerlund
6 mar 2011 13:37:32
1

Esto debería eliminar el soporte para comentarios en tu sitio:

add_action('admin_menu', 'remove_comment_support');

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

No estoy seguro si ocultará todas las menciones de comentarios en la sección de administración. El cuadro "Ahora mismo" en el escritorio está mayormente codificado directamente, así que tendrías que ocultar ese cuadro o hacer algún truco para filtrar la línea sobre "Comentarios". Pero debería eliminar el texto de "comentarios" en todos los demás lugares que se me ocurren.

5 mar 2011 12:23:54
Comentarios

Pero sigue siendo visible en el menú de administración. No quiero eso.

Peter Westerlund Peter Westerlund
5 mar 2011 13:59:21
0
// Deshabilitar soporte para comentarios y trackbacks en tipos de contenido
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');

// Cerrar comentarios en el 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);

// Ocultar comentarios existentes
function df_disable_comments_hide_existing_comments($comments) {
    $comments = array();
    return $comments;
}
add_filter('comments_array', 'df_disable_comments_hide_existing_comments', 10, 2);

// Eliminar página de comentarios del menú
function df_disable_comments_admin_menu() {
    remove_menu_page('edit-comments.php');
}
add_action('admin_menu', 'df_disable_comments_admin_menu');

// Redirigir a usuarios que intenten acceder a la página de comentarios
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');

// Eliminar metabox de comentarios del escritorio
function df_disable_comments_dashboard() {
    remove_meta_box('dashboard_recent_comments', 'dashboard', 'normal');
}
add_action('admin_init', 'df_disable_comments_dashboard');

// Eliminar enlaces de comentarios de la barra de administración
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');

Fuente

17 dic 2014 18:36:58
4

Esto no lo eliminará de tu marcado per se, pero puedes ocultar fácilmente el enlace de la barra de administración de WP 3.1 (tanto visualmente como de los lectores de pantalla) añadiendo la siguiente línea al CSS de tu tema:

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

22 may 2011 10:07:08
Comentarios

Mientras investigaba más sobre este tema, encontré esta publicación en Six Revisions que cubre cómo ajustar gran parte de la interfaz de administración, incluyendo eliminar todo rastro de la función de comentarios.

poisontofu poisontofu
22 may 2011 10:43:36

...y si por alguna razón quieres dejar algo de esto activo para usuarios de nivel administrador, usa la función current_user_can, por ejemplo: if (!current_user_can('level_10')) se dirige solo a usuarios no administradores.

poisontofu poisontofu
22 may 2011 10:56:42

Los niveles de usuario están obsoletos. Usa 'manage_options' u otra capacidad en su lugar.

scribu scribu
22 may 2011 18:12:54

@scribu: Me preguntaba sobre esto, no pude encontrar ninguna referencia reciente a los niveles de usuario en el WP Codex. Gracias por hacérmelo saber (esta tabla de roles y capacidades me ayudó a entender las capacidades).

poisontofu poisontofu
26 may 2011 09:21:51
0

Existe una solución lista para usar que hace exactamente eso. Es un plugin de Frank Bültge

Documentación: http://wpengineer.com/2230/removing-comments-absolutely-wordpress/

Descarga del plugin: https://github.com/bueltge/Remove-Comments-Absolutely

Solo instálalo y listo. No requiere configuración.

Funciona correctamente con WP 3.5.

13 dic 2012 23:35:52