Como integrar Joomla y Moodle con la extensión Joomdle

Para crear cursos online, la plataforma Moodle es una de las mejores opciones, lo he dejado claro en mis post 😉 . Pero si quieres crear una página de entrada (landing page) para promocionar tus cursos, o crear un blog que le de relevancia; Joomla y Moodle es tu mejor opción.

En esta guía te muestro como tener lo mejor de ambos mundos de manera fácil y sencilla.

Importante
Esta guía se basa en la instalación sobre Moodle 3.x  y Joomla 3.x

¿Qué es Joomla?

Es un sistema de gestión de contenidos (CMS) al igual que Moodle, pero a diferencia de éste, su enfoque es la gestión pura y dura de contenido web dinámico. Nos da las herramientas necesarias para crear una página web que promocione y venda nuestros cursos, crear un blog, entre otras.

Junto con WordPress y Drupal es uno de los mejores CMS de la actualidad. Es de código abierto, podrás usarlo comercialmente sin problema.

Joomla nos permite integrar su base de datos con la de Moodle, a través de una extensión (plugin) que se llama Joomdle, que sirve de puente (bridge) entre ambas plataformas.

Ventajas de usar Joomdle

  1. Integrar los usuarios que tengas registrado en Joomla con los de Moodle y viceversa.
  2. Gestionar los recursos de ambas plataformas de manera integral.
  3. Vender los cursos de Moodle con los componentes especializados de Joomla para gestionar tiendas virtuales, como Virtuemart o HikaShop (con las ventajas que acarrea).
  4. El ahorro de tiempo asociada a la gestión integrada de las plataformas.
  5. Es una extensión que constantemente se actualiza.

¿Es mejor Moodle y Joomla por separado?

Joomla y Moodle

A estas alturas es posible que te preguntes: ¿Cuál es el problema de tener las dos plataformas separadas y enlazar lo que me interese por vínculos (links)?

Pues no hay ningún inconveniente, es totalmente posible, muchas personas lo usan de esta forma. Puedes gestionar tus dos plataformas por separado y tener los mejor de dos mundos.

En mi experiencia, solo con la opción de gestionar mis cursos con la tienda de Joomla es suficiente motivo para optar por la integración 😉 . Moodle no está enfocado al marketing de cursos, ni a la gestiones de: páginas web dinámicas y blogs.

Nota
En Moodle es posible gestionar un blog, pero es tan malo y aburrido 😆  que sólo mencionarlo me da sueño.

¿Porqué no WordPress con Moodle?

WordPress en mi opinión es el mejor manejador de contenido que existe en la actualidad, de paso es el que se usa en este blog 😀 . Existen plugins como Edwiser Bridge, que permiten la integración, pero no son tan buenos, ni tan consolidados como el Joomdle.

Con Edwiser Bridge la integración con WooCommerce, que es el plugin más popular para la venta de productos y servicios WordPress, es una opción Premium (debes pagar por ella).

Descargas necesarias

Al igual que hice con el Moodle, el cual instalé en mi computadora, haré lo mismo con el Joomla. Vamos a instalarlo en Wampserver tal como hicimos en mi guía de instalación de Moodle.

Lo instalaremos en nuestro entorno de pruebas en nuestra PC, luego puedes instalarlo en tu servidor en la internet si lo deseas.

Descarga el Joomla desde aquí. Debes ir por el Full Package (paquete completo). La versión upgrade packages es cuando quieres llevar tu antiguo Joomla a una versión más reciente.

El Joomdle lo descargamos en este link. Aquí hay varias descargas de componentes. El que necesitamos está en la carpeta: Core. Nos llevará a otra página donde podrás descargar el archivo ZIP necesario. Descomprímelo en una carpeta.

Instalación de Joomla

Descomprimimos el paquete Joomla que descargamos previamente y lo colocamos todo en una carpeta con el nombre que desees, en mi caso la llamare joomlaprueba.

Llevamos la carpeta joomlaprueba al directorio de publicación de Wampserver. Estos pasos son iguales al de la instalación de Moodle en la guía que te dejé antes.

En el caso de un servidor en la web, súbelo vía FTP y colócalo en la carpeta de publicación de tu servidor.

Vamos a nuestro navegador web y colocamos en la barra de dirección: localhost, acompañado del nombre de la carpeta que le diste al Joomla, en mi caso sería: localhost/joomlaprueba, luego, dale a Enter para iniciar la instalación.

Ahora nos aparecerá la pantalla de configuración inicial del Joomla. Debemos introducir la información que se nos pide. Verifica que esté seleccionado Spanish (español) en el selector de idioma. Al finalizar le damos clic a Siguiente.
instalando joomla principal

En la siguiente pantalla, debemos rellenar más información 🙄 . En wampserver, el usuario de la base de datos es root y la contraseña se deja en blanco de manera predeterminada. Lo demás déjalo como está. Luego clic a Siguiente.

instalando joomla base datos

Nota
En un servidor en la web, en el cpanel asígnale a la base de datos del Joomla un usuario con su respectiva contraseña.

La pantalla de abajo es un resumen de la instalación y algo más. Si quieres instalar el Joomla con algunos páginas de ejemplo marca la casilla correspondiente en Instalar los datos de ejemplo, no se verá tan vacío :mrgreen: .

En las comprobaciones previas es importante que estén todas marcadas en verde, si no la instalación no podrá finalizar. Esto es lo que necesita Joomla del PHP. Te remito nuevamente a la guía de instalación de Moodle para más información. Le damos clic a instalar para terminar.

instalando joomla

Importante
La extensión XML-RPC: php_xmlrpc.dll. Debe estar instalada en el servidor web. Verifica en tu php.ini

Espera mientras se instala y configura. Si todo sale bien, dale al botón Eliminar carpeta de instalación. No podrás continuar si no lo haces.

instalando joomla eliminar carpeta instalacion

Listo, ya podremos ver nuestro Joomla. Haciendo clic en botón Sitio, o poniendo en la barra de dirección: localhost/nombrecarpetaquelepusitealjoomla. En mi caso: localhost/joomlaprueba.

Configuración del Joomla

Como te habrás dado cuenta está en ingles nuestro Joomla. Si lo quieres así, perfecto 😎 . Pero si lo quieres en español, ¡manos a la obra!.

joomla pagina principal

Vamos al panel de administración (backend) en la dirección: localhost/ nombrecarpetaquelepusitealjoomla/administrator, el mio quedaria: localhost/joomlaprueba/administrator

Pon tu nombre de usuario administrador y la contraseña que le asignaste en la instalación.

En la pantalla principal, vamos al menú izquierdo: Configuration > Language(s)

joomla configuracion idioma

Luego vamos al botón superior izquierdo: Install Languages.

joomla configuracion idioma 1

En esta pantalla debemos ubicar el idioma a instalar. Coloca spanish en el buscador. Una vez localizado marca la casilla de verificación, y le damos a Install.

joomla configuracion idioma 2

El Joomla descargará automáticamente el idioma. Ahora para pasarlo al español vamos al menú principal en: Extensions > Language(s) > Installed.

joomla configuracion idioma 4

Ponemos en esta pantalla el español como idioma por defecto: seleccionando la estrella en la columna default del idioma Spanish. Esto lo haremos tanto para Site como para Administrator en el menú desplegable. Así colocamos el sitio web y el panel de administración en español.

joomla configuracion idioma 5

Instalación del Joomdle en Joomla

Ahora que tenemos el Joomla instalado, por fin vamos a instalar la extensión Joomdle.

Vamos al menú principal: Extensiones > Gestionar > Instalar. Con el botón Examinar… localizamos el arhivo ZIP en la carpeta que descomprimimos el Joomdle, se llama: joomdle-joomla-package.zip. Clic en Subir e instalar.

instalar joomdle en joomla

Si todo sale bien, en la pantalla resultante nos deben salir varios status de Installed. Con esto ya tenemos la extensión instalada en Joomla.

Habilitar servicios necesarios en Moodle

Ahora nos vamos al Moodle. Logueate en tu servidor como administrador. Esta guía te puede ayudar.

Debemos habilitar los servicios web en el bloque de administración: Administración del sitio > Características avanzadas. Marcamos la casilla en Habilitar servicios web, y guardamos los cambios.

habilitar servicios web

Vamos nuevamente al bloque de administración: Administración del sitio > Extensiones > Servicios web > Vista general. Damos clic a: Habilitar protocolos en el apartado Permitir un sistema externo para controlar Moodlehabilitar protolos web

Aquí habilitamos el Protocolo XML-RPC dándole clic al ojo que está al lado: debe verse abierto. Esto lo habilita. Guardamos los cambios.

habilitar protolos xml-rpc

Instalación del Joomdle en Moodle

Instalaremos la extensión auth_joomdle.zip descomprimido del paquete Joomdle (debe estar en la carpeta que marca Moodle). Vamos a: Administración del sitio > Extensiones > Instalar módulos externos.

Tienes dos maneras de hacerlo:

  1. Arrastrando y soltando el archivo zip hasta el recuadro que marca: Puede arrastrar y soltar archivos aquí para añadirlos.
  2. Darle clic al botón seleccione un archivo, en la nueva pantalla ir a la opción en el menú a la izquierda: Subir un archivo. Con el botón examinar lo buscas en su ubicación en tu computadora. Finalizamos haciendo clic en el botón: Subir este archivo.

Después debes darle clic al botón Instalar modulo externos desde archivo ZIP.

instalar aut_joomdle

Aparecerán tres pantallas seguidas si todo sale bien:

  • En la primera dale a Continuar.
  • En la segunda Actualizar base de datos Moodle ahora.
  • En la última: Continuar.

El Joomdle se instaló por fin  😉 . Pero todavía nos falta para terminar 😀 .

Ahora debemos habilitar la autentificación de usuarios con Joomdle. Vamos al bloque de administración: Administración del sitio > Extensiones > Autenticación > Gestionar la autenticación.

Hacemos clic en el ojo al lado del Joomdle (en la columna a la derecha), debe mostrase abierto.

habilitar joomdle en moodle

Configurar Joomdle

Desde: Administración del sitio > Extensiones > Autenticación. Hacemos clic en Joomdle.

Aquí lo más importante:

  1. La URL del Joomla (dirección web). En el caso de mi servidor casero es: http://localhost/joomlaprueba. En un servidor web, debe ser el dominio donde esté alojado Joomla.
  2. El Token de autenticación de Joomdle en Joomla, por ahora lo dejaremos en blanco (debemos hacer unos pasos primero)

El método de conexión es el que soporte tu servidor. En el wampserver dejo file_get_contents.

Puedes configurar las opciones que quieras aquí, por mi parte coloco Sincronizar usuarios a Joomla en: Sí, y el Lenguaje por defecto en Joomla en: es-ES.

configurando joomdle

Creación de usuario de Joomdle en Moodle

Debemos crear un usuario (servicio) en Moodle que conecte los dos sistemas.

Vamos a Administración del sitio > Usuarios > Cuentas > Agregar usuario. Colocaremos un nombre de usuario, yo puse el típico joomdle  😳 y escoger como método de identificación: Identificación de Servicios Web (‘Web Services’).

Rellena los demás campos obligatorios como desees. Al final le damos a Crear usuario.

crear usuario joomdle

Asignar funciones al servicio

A continuación, asignaremos al usuario joomdle creado los servicios necesarios para su funcionamiento.

Iremos a: Administración del sitio > Extensiones > Servicios Web > Servicios externos. Hacemos clic al link Agregar. Nos aparecerá una pantalla donde debemos colocar el nombre del servicio, en mi caso joomdle. Marca la opción Habilitado, luego dale a Guardar cambios.

creacion servicion joomdle

En la próxima pantalla que se genera hacemos clic en el link: Agregar funciones. Nos llevará a la pantalla donde asignaremos los servicios. Escribiremos: joomdle en el campo buscar, esto nos mostrará los servicios disponibles solo para él. Los seleccionaremos todos: con la tecla Shift pulsada y sin soltar, seleccionamos desde el primero al último. Hacemos clic al botón Agregar funciones.

agregar-funciones al servicio joomdle

Asignar roles al servicio

En este paso le daremos los roles necesarios al servicio creado.

Iremos a Administración del sitio > Usuarios > Permisos > Definir roles, le damos clic al botón Añadir un nuevo rol. En la siguiente pantalla, clic a Continuar, sin modificar nada.

En esta pantalla le colocaremos un nombre al rol, yo coloqué: joomdle_servicio, y marcamos la casilla en Tipos de contexto en que puede asignarse este rol: Sistema. Además, marcamos las casillas Servicio Web: Protocolo XML-RPC y Ver debates en la columna habilidad.

Tip
Son muchas las opciones en la columna habilidad, encuéntralas filtrándolas en el campo de búsqueda de ser necesario.

Le damos a Crear este rol para finalizar este paso.

asignar rol joomdle

Vamos a Administración del sitio > Usuarios > Permisos > Asignar roles globales, allí veremos nuestro servicio creado, y hacemos clic en él. En este caso es joomdle servicio

asignar rol global

En la próxima pantalla debemos pasar el usuario creado en el recuadro a mano derecha: Usuarios potenciales al recuadro izquierdo: Usuarios existentes, seleccionando el usuario creado y hacer clic el Agregar.

rol a asignar

Crear Token en Moodle

Para conectar con Joomla crearemos un Token. Vamos a: Administración del sitio > Extensiones > Servicios Web > Administrar tokens. Hacemos clic en el link: Agregar.

Seleccionamos el usuario creado anteriormente: Joomdle Prueba en mi caso. En el campo marcado como: Servicio, seleccionamos el que creamos, joomdle para mi. Guardamos los cambios para que se genere el token.

crear token moodle

El token que se generó debemos copiarlo en Joomla, para poder hacer la conexión entre los dos CMS. Copia el código.

token generado moodle

Conexión de Joomla y Moodle

Nos logueamos nuevamente en el panel de administración de Joomla, y vamos al vínculo del menú principal: Componentes > Joomdle > Configuración.

Aquí es necesario que peguemos el token de Moodle en: Token de autenticación de Moodle, deberemos colocar también la URL nuestro Moodle, en mi caso: http://localhost/moodleprueba, en un servidor web es el dominio del Moodle. El Método de conexión debe ser el mismo que colocamos en Moodle. Le damos a Guardar

general token en joomla 1

En cuanto le demos guardar, se genera el Token de Joomla, este debemos copiarlo en Moodle.

general token en joomla 2

Volvemos al panel de administración de Moodle en: Administración del sitio > Extensiones > Autenticación > Joomdle. Copiamos el token de Joomla en el campo Token de autenticación de Joomdle en Joomla. Guardamos los cambios.

token joomla en moodle

Comprobar que todo funciona

Para comprobar que todo funciona como debe, vamos al panel de administración de Joomla, menú principal: Componentes > Joomdle > Configuración > Comprobación del sistema. Si todo lo hiciste correctamente te marcará todos las listas en verde, como ves en la imagen de abajo.

comprobacion de instalacion

Con esto terminamos la guía, Uffff 😛 ,  pero vale la pena 😀  . Si tienes alguna duda déjala en los comentarios.

Califica este artículo

Puntuación promedio 5 / 5. Votos: 1

No hay votos hasta ahora. Sé el primero en calificar esta publicación.

20 comentarios en “Como integrar Joomla y Moodle con la extensión Joomdle”

  1. Buen trabajo man!…. gracias a unos amigos y a vos por guiarme, haz explicado todo paso a paso y no como lo hacen muchos que dejan huecos pero que bien amigo. saludos!

    Responder
  2. Hola, gracias por detallar todo paso a paso me ha sido de mucha ayuda, he configurado todo tal cual lo explicas pero en el último paso de comprobación para ver si todo funciona “System Check” las tres últimas opciones no me salen activas (las dos de conectividad y la de servicios web), tienes alguna idea de xq me pasa esto… gracias de antemano, saludos

    Responder
    • Hola Indira. La guía la probé en tres ocasiones (la mas reciente hace unos seis meses) y funciono sin problemas, el plugin esta actualizado ya que la ultima versión es de mayo de 2017.

      Te recomiendo probarlo en localhost para descartar errores con tus instalaciones. Otra cosa que podrías hacer es probarlo en localhost con una versión de Moodle anterior, como la 3.0 (si tienes la mas reciente 3.2 o 3.3) para comprobar que no sea un problema con el Moodle, que es lo que suele dar mas errores.

      De todas maneras tengo pendiente una revisión del articulo con las nuevas versiones, aunque no debería cambiar lo que describo en el articulo.
      Saludos.

      Responder
      • Gracias x la rápida respuesta, he seguido los pasos al pie de la letra, estoy usando la versión moodle 3.0, lo que he notado es que la versión de la extensión joomdle que usé fue la 1.1.1 que y la que has usado es la 1.1.3, desinstalaré todo y volveré a probar paso a paso con esta versión para ver si puede ser esto, si no consigo que funcione probaré lo que me comentas de instalarlo en local… Saludos

        Responder
  3. Hola, antes de preguntar, deseo agradecerle por tomarse el tiempo para realizar este tutorial tan detallado.
    La pregunta es: ¿como instalo el moodle en un subdominio?,¿es posible?, de no ser así ¿sería necesario comprar otro dominio exclusivo para el Moodle?
    De antemano agradezco sus respuestas.

    Responder
  4. Que pasa si no veo la extensión de Joomdle en Moodle

    entro a… Administración del sitio > Extensiones > Autenticación > Gestionar la autenticación. Pero no logro ver la Extensipon de Joomdle

    Que puede estar pasando?

    Responder
    • Hola Ereyes.
      Por lo que indicas parece que no está instalada la extensión Joomdle en Moodle. Si sigues los pasos de la guía no deberías tener problemas.
      De todas maneras, te recomiendo comenzar la instalación desde cero en un servidor local, para comprobar en qué punto está el problema.
      En este artículo explico cómo instalar un servidor local con Moodle, por si lo desconocías.
      Espero haber sido de ayuda.

      Responder
  5. Excelente Tutorial, Pero tengo una pregunta,
    ¿Como hago para sincronizar los usuarios existentes en moodle al joomla, solo me sincorniza si creo un usuario nuevo desde 0, pero a los mas de 2000 usuarios que ya tengo en moodle no me los sincroniza en joomla?, Que se tiene que hacer para sincronizarlos.

    Responder
    • Hola Camilo. Me alegra leerte.
      Ve al Joomla en el menu Componentes a Joomdle > Usuarios, en ella deberían estar todos los usuarios que están en Moodle y no en Joomla y viceversa, selecciona los que desees migrar al joomla uno por uno o masivo y dale al botón en la parte de arriba a la izquierda que pone: Añadir usuarios a Joomla; con eso debería bastar.
      Te recomiendo como siempre no lo hagas en un servidor en producción, usa un respaldo del Moodle o en tu computadora en localhost por si falla algo.
      Saludos.

      Responder

Deja un comentario

El responsable de este sitio web es Marit Acuña. La finalidad de los datos es gestionar los comentarios en este blog. El destinatario (donde se almacenan los datos) es el hosting de este blog: Banahosting, ubicado en EEUU. La legitimidad es el consentimiento que otorgas en el formulario. Tienes derecho a acceder, rectificar, limitar y suprimir tus datos según la política de privacidad.

Únete y recibe las últimas novedades en tu email.
Suscríbete a Evirtualplus
Suscríbete
política de privacidad
Acepto la
Suscríbete a Evirtualplus
Acepto la política de privacidad
Suscríbete
Suscríbete