Saltar al contenido

Inicio / Blog / Coordinación y administración

Coordinación y administración

Cómo crear muchos cursos a la vez en Moodle con un archivo CSV

José Luis Ramírez QuirozPor
Fundador de miaula.pe y Grupo CONIT
Publicado el 29 de octubre de 20266 min de lectura
En resumen

Ve a Administración del sitio > Cursos > Subir cursos y sube un CSV con las columnas shortname, fullname y una de category, category_idnumber o category_path. Revisa la Vista previa, elige Crear solo cursos nuevos, saltar los existentes y, si quieres que todos nazcan con el mismo contenido, indica un curso plantilla en Restaurar de este curso después de subirlo.

En esta guía ▾
  1. Paso 1: prepara las categorías
  2. Paso 2: arma el CSV
  3. Paso 3: súbelo y revisa la vista previa
  4. Paso 4: elige las opciones de carga
  5. Agregar métodos de matrícula desde el mismo CSV
  6. Actualizar cursos que ya existen
  7. Problemas comunes
  8. Nota para Moodle 5.x
  9. Preguntas frecuentes

Para crear muchos cursos a la vez, entra a Administración del sitio > Cursos > Subir cursos, sube un archivo CSV con las columnas shortname, fullname y una columna de categoría (category, category_idnumber o category_path), revisa la Vista previa y elige el modo Crear solo cursos nuevos, saltar los existentes. Si indicas un curso modelo en templatecourse, todos los cursos nacen con su estructura y actividades.

Así, los 40 cursos de un ciclo se crean en minutos y con nombres coherentes, en lugar de una mañana entera de formularios.

Paso 1: prepara las categorías

Las categorías deben existir antes de subir el CSV: la herramienta no las crea. Créalas en Administración del sitio > Cursos > Administrar cursos y categorías y ponle a cada una un Número de ID corto, por ejemplo enf-c1 para «Enfermería / Ciclo I». Ese código es el más seguro para el CSV. Cómo armar el árbol de categorías está en Cómo crear un curso en Moodle y organizarlo en categorías.

Paso 2: arma el CSV

Ejemplo para un instituto que abre el ciclo 2027-I de Enfermería con turnos mañana y noche:

shortname,fullname,category_idnumber,startdate,enddate,format,visible,templatecourse ENF-ANAT-27I-M,Anatomía 2027-I Mañana,enf-c1,2027-03-15,2027-07-31,topics,0,MODELO-ANAT ENF-ANAT-27I-N,Anatomía 2027-I Noche,enf-c1,2027-03-15,2027-07-31,topics,0,MODELO-ANAT ENF-BIO-27I-M,Biología 2027-I Mañana,enf-c1,2027-03-15,2027-07-31,topics,0,MODELO-BIO

Las columnas que más se usan:

Columna Obligatoria Qué va Ejemplo
shortname Sí Nombre corto, único en el sitio ENF-ANAT-27I-M
fullname Sí, al crear Nombre que ven los alumnos Anatomía 2027-I Mañana
category_idnumber Una de las tres Número de ID de la categoría enf-c1
category_path Una de las tres Ruta de categorías separada por « / » Enfermería / Ciclo I
category Una de las tres Id interno de la categoría 12
idnumber No Código del curso en tu sistema académico ANAT101
startdate, enddate No Fechas en formato año-mes-día 2027-03-15
format No topics (temas), weeks (semanal), singleactivity topics
visible No 1 visible, 0 oculto 0
summary No Descripción del curso Texto breve
enablecompletion No 1 activa el rastreo de finalización 1
templatecourse No Nombre corto del curso modelo MODELO-ANAT

Reglas que evitan la mayoría de errores:

  • Los nombres de columna van en minúsculas, tal cual.
  • Si un nombre de curso lleva coma, encierra el valor entre comillas o elige otro separador al subir.
  • Guarda el archivo en UTF-8 para que las tildes y la ñ salgan bien.
  • Usa fechas ISO (2027-03-15). Un 03/04/2027 puede leerse como 4 de marzo.
  • Deja los cursos ocultos (visible en 0) hasta que el docente los revise.

Paso 3: súbelo y revisa la vista previa

  1. Ve a Administración del sitio > Cursos > Subir cursos.
  2. Arrastra el CSV a Archivo.
  3. Revisa Separador CSV (coma) y Codificación (UTF-8).
  4. Haz clic en Vista previa.

En la pantalla de Previsualización de los cursos cargados, cada fila muestra si se creará y los errores encontrados (por ejemplo, «Falta valor para los campos obligatorios»). Si una fila tiene error y sigues adelante, esa fila se ignora: mejor corrige el archivo y vuelve a empezar.

Paso 4: elige las opciones de carga

Opción Qué elegir para un ciclo nuevo
Modo subida Crear solo cursos nuevos, saltar los existentes
Modo de actualización Sin cambios (no tocas cursos que ya existen)
Permitir eliminar, Permitir renombrar, Permitir reiniciar No
Restaurar a partir de este archivo después de la carga Un archivo de copia (.mbz) si tu modelo está en un archivo
Restaurar de este curso después de subirlo El nombre corto del curso modelo, si es el mismo para todos
Valores por defecto del curso Formato, idioma, visibilidad y número de secciones para los campos que no pusiste en el CSV

Luego haz clic en Subir cursos. Al final verás Resultados de la carga de cursos con el Total de cursos, Cursos creados y Cursos con errores.

Si todo salió bien, en Administrar cursos y categorías verás los cursos dentro de sus categorías, con las actividades del modelo y sin alumnos.

El curso modelo

Con templatecourse (o la opción general), Moodle copia el contenido del modelo en cada curso nuevo: secciones, actividades, recursos, libro de calificaciones y configuraciones. No copia alumnos. Es la forma más rápida de que todas las secciones de Anatomía tengan el mismo sílabo, las mismas prácticas y la misma escala de 0 a 20 con aprobatoria 11.

Revisa después las fechas de las actividades (aperturas, cierres, vencimientos): pueden quedar con las del modelo, así que compruébalas antes de mostrar el curso. La guía Cómo cambiar las fechas de todas las actividades te ayuda a revisarlas en una sola pantalla. Para copiar contenido de un curso que ya existe a otro, también existe la importación: Cómo copiar un curso o importar actividades.

Agregar métodos de matrícula desde el mismo CSV

Puedes dejar cada curso conectado a una cohorte desde la carga:

shortname,fullname,category_idnumber,enrolment_1,enrolment_1_cohortidnumber,enrolment_1_role ENF-ANAT-27I-N,Anatomía 2027-I Noche,enf-c1,cohort,enf-2027-1-noche,student

El curso nace con el método Sincronizar cohorte y los miembros de esa cohorte quedan matriculados como estudiantes. Cómo crear la cohorte está en Cohortes en Moodle.

Actualizar cursos que ya existen

La misma herramienta sirve para cambios masivos, por ejemplo ocultar todos los cursos del ciclo anterior:

shortname,visible ENF-ANAT-26II-M,0 ENF-ANAT-26II-N,0

Usa Modo subida: Sólo actualizar cursos existentes y Modo de actualización: Actualizar solo los datos CSV. Prueba primero con dos filas.

Problemas comunes

«Falta valor para los campos obligatorios». Falta fullname o la columna de categoría en esa fila.

El curso no se crea porque el nombre corto ya existe. Los nombres cortos son únicos en todo el sitio. Agrega el ciclo y el turno al nombre corto (-27I-M).

La categoría no se encuentra. El category_idnumber no coincide con el Número de ID de la categoría, o en category_path usaste otro separador. Debe ser espacio, barra, espacio: Enfermería / Ciclo I.

Las tildes salen como símbolos raros. El archivo no está en UTF-8. Guárdalo como «CSV UTF-8» desde Excel.

«El curso a restaurar no existe». El nombre corto en templatecourse está mal escrito.

Con miaula.pe Al inicio de cada ciclo, el soporte de miaula.pe puede crear tus cursos por CSV a partir de una hoja con nombres, turnos y docentes, usando tus cursos modelo para que todos salgan iguales. Mira cómo trabajamos con institutos.

Nota para Moodle 5.x

En Moodle 5.0 a 5.3, Subir cursos sigue en la misma ruta y acepta las mismas columnas básicas; revisa la ayuda de la propia página por si tu versión admite campos nuevos. La lista completa de columnas está en Upload courses.

Preguntas frecuentes

¿Qué columnas son obligatorias para subir cursos en Moodle?

Para crear un curso necesitas shortname (nombre corto, único), fullname (nombre completo) y una columna de categoría: category (id), category_idnumber o category_path. Los nombres de las columnas van en minúsculas.

¿Puedo crear los cursos con el contenido de un curso modelo?

Sí. Agrega la columna templatecourse con el nombre corto del curso modelo, o indícalo para todos en Restaurar de este curso después de subirlo. Cada curso nuevo se crea con las actividades del modelo, sin alumnos.

¿Qué formato de fecha acepta el CSV de cursos?

El formato ISO, año-mes-día, por ejemplo 2027-03-15, funciona siempre. Úsalo en startdate y enddate para evitar confusiones entre día y mes.

¿Puedo matricular a los alumnos desde el mismo CSV?

Puedes agregar métodos de matriculación al curso, por ejemplo una sincronización de cohorte con las columnas enrolment_1, enrolment_1_cohortidnumber y enrolment_1_role. Las personas se matriculan después, con Subir usuarios o con la cohorte.

¿Quieres un aula así para tu institución?

Te entregamos tu aula Moodle lista, con tu marca, y capacitamos a tus docentes.

Tu aula virtual

¿Todavía no tienes tu aula Moodle?

miaula.pe la deja lista en 3 semanas, con tu marca, cobros con Yape y certificados con QR. Pago único, sin mensualidades: mira los planes, el hosting Moodle o pide una demo.