// 1. Deshabilitar comentarios en entradas, páginas y productos de WooCommerce

function disable_comments_post_types() {

    // 1.1. Deshabilitar comentarios en entradas

    remove_post_type_support('post', 'comments');

    // 1.2. Deshabilitar comentarios en páginas

    remove_post_type_support('page', 'comments');

    // 1.3. Deshabilitar comentarios en productos de WooCommerce

    remove_post_type_support('product', 'comments');

}

add_action('init', 'disable_comments_post_types');


// 2. Cerrar los comentarios en entradas, páginas y productos

function close_comments($open, $post_id) {

    // 2.1. Comprobar el tipo de post del ID proporcionado

    if (get_post_type($post_id) === 'post' || get_post_type($post_id) === 'page' || get_post_type($post_id) === 'product') {

        // 2.2. Retornar false para cerrar los comentarios

        return false;

    }

    // 2.3. Retornar el estado original si no es uno de los tipos especificados

    return $open;

}

add_filter('comments_open', 'close_comments', 10, 2);


// 3. Eliminar comentarios de las entradas existentes

function disable_existing_comments($comments) {

    return []; // Retornar un array vacío para eliminar comentarios existentes

}

add_filter('comments_array', 'disable_existing_comments', 10, 2);