Después de mi artículo donde integramos Joomla y Moodle usando Joomdle, es hora de que lo hagamos también para el famoso CMS WordPress a través del plugin Edwiser Bridge.
Con ello podrás tener lo mejor de los dos mundos: Moodle y WordPress, sin necesidad de gastar ni un centavo.
Prepárate, ya que este post está diseñado como a ti te gusta: lleno de imágenes y bien detallado para que no quede ninguna duda 😎.
Tabla de contenidos
Pues si no sabes qué es WordPress, es que has estado debajo de las piedras los últimos 10 años (era una broma, no te molestes 😅).
WordPress es un Sistema de gestión de contenido o CMS por sus siglas en inglés (Content Management System), que nos permite crear y gestionar: páginas web, blogs y tiendas online en Internet de manera sencilla y práctica.
Esta cifra lo dice todo de WordPress: más del 40% de los sitios web en el mundo funcionan con WordPress, o sea, más de 75 millones de instalaciones activas 😮 en la actualidad.
Es un software libre, que tiene dos versiones: wordpress.com y wordpress.org. La primera nos permite montar nuestro propio sitio usando WordPress sin necesidad de contratar ni gestionar un servicio de alojamiento web (hosting). En wordpress.org, podremos descargar el software propiamente dicho e instalarlo en el hosting de nuestra preferencia.
Para este post, usaremos el wordpress.org. Asumiré que ya tienes y gestionas tu propio WordPress, el cual integraremos con Moodle haciendo uso del plugin Edwiser Bridge. En este vínculo te dejo un poco más de información sobre WordPress.
Moodle y WordPress son dos software líderes en sus campos. El primero orientado a gestionar educación online y el segundo a publicaciones web en general. Integrarlos nos permitiría mejorar la gestión de contenido de Moodle y a su vez, obtener las herramientas educativas de las que WordPress carece de manera nativa.
WordPress tiene excelentes plugins para gestión de E-learning, pero la mayoría o son de pago o freemium, y aun así no alcanzan a ofrecer las herramientas y la profundidad que tiene Moodle en este campo.
Las ventajas de la integración usando el plugin Edwiser serían principalmente dos:
No existe ningún limitante para esto, puedes publicitar tus cursos en WordPress y gestionar el registro de usuarios para los cursos directamente en Moodle. De hecho, es la estrategia que usamos en la actualidad en este blog.
El problema es que mientras más compleja y grande es la propuesta educativa, más difícil se hace la gestión de cursos y usuarios, por lo que deberemos migrar a soluciones como las que te propongo en este post.
Si vienes de mi artículo de Joomdle, ahora nos toca voltear la tortilla 🙃.
Joomla es otro excelente gestor de contenido, pero que en la actualidad se ve ampliamente superado en facilidad de uso y extensiones por WordPress.
Joomdle sigue siendo en mi opinión mejor que el plugin Edwiser Bridge, no te pide que pagues para poder integrar las tiendas de Joomla como Virtuemart o HikaShop.
Pero también debo decirte que el crecimiento de WordPress es cada día mayor y no parece que Joomla lo vaya a alcanzar (tiene 3% de cuota), por lo que en la actualidad WordPress es la mejor apuesta dentro de los CMS.
Edwiser Bridge es un plugin gratuito de WordPress que tiene entre sus ventajas:
Nota
El plugin Edwiser Bridge tiene una versión Premium (por la que debes pagar) que nos permite extender sus funciones, como la integración con el plugin WooCommerce, el cual sirve para una gestión de tiendas online más eficiente y completa.
Para este artículo vamos a hacer la instalación en localhost en nuestra computadora, evitando así cualquier problema que se nos pudiera presentar en una web en producción (funcionando en la internet), y luego si todo sale bien, podemos implementarlos en nuestro sitio. Esto nos permite hacer todas la pruebas e inventos 😆 que creas necesarios. Te dejo mi guía de instalación de Moodle en tu computadora por si necesitas un cable.
Para integrar Moodle y WordPress con el plugin Edwiser Bridge instalaremos el software wordpress.org (debes tener un hosting y un dominio contratado previamente para un sitio en producción). El WordPress lo puedes descargar desde aquí.
Como nuestra intención es hacer las pruebas en nuestra computadora, sírvete de esta guía para instalar el WordPress en localhost.
Tip
Todos los pasos que te muestro sirven perfectamente para tu sitio web en funcionamiento, sólo debes sustituirlo por tu dirección web en los sitios que haga falta.
Vamos a Plugins > Añadir nuevo, en el recuadro buscar plugins ponemos: edwiser bridge. Una vez localizado haremos clic a Instalar ahora y luego a Activar. Con esto ya tendremos el plugin instalado y funcionando.
Las opciones del plugin estarán disponibles en el menú de administración de WordPress, a la izquierda, denominado Edwiser Bridge.
El Moodle deberemos configurarlo para que permita al plugin Edwiser Bridge el acceso; esto dirigido principalmente a la retroalimentación de los usuarios entre las plataformas y de los cursos que creamos en Moodle.
Se realiza creando una clave única de seguridad (token) en Moodle, lo cual permite la conectividad. En versiones anteriores de Edwiser Bridge (hasta la versión 1.4.2) se configuraba manualmente, pero ahora el plugin lo hace por nosotros, nada mal verdad 🤓. Pero no nos adelantemos, que primero lo primero.
Los pasos siguientes deberemos realizarlos logueado como administrador en Moodle.
Lo primero que debemos hacer es instalar el plugin Edwiser Bridge en Moodle, este servirá para la conectividad de dos vías entre Moodle y WordPress. Descárgalo desde aquí.
Si no sabes cómo instalar plugins en Moodle, esta 👉 guía puede ayudarte.
A final de la instalación, luego de actualizar la base de datos, nos mostrará un botón que pone Click Here; presiónalo para que nos abra la configuración del Edwiser Bridge.
Nota
Si por alguna circunstancia no vez el botón Click Here o le diste a Guardar cambios, no te preocupes, lo podrás encontrar en: Administración del sitio > Extensiones > Edwiser Bridge > Settings.
En la pantalla de configuración que quedó abierta, dale clic a Guardar cambios.
Una vez ubicados en la configuración de Edwiser, haz clic en la primera pestaña a la izquierda: General.
En ella podremos agregar las opciones generales necesarias en Moodle para que funcione adecuadamente con el plugin, en unos pocos clics.
Marca las casillas: Enable REST Protocol, Enable Web Services y Allow extended characters in usernames. Desmarca: Password Policy (que viene habilitada por defecto).
Haz clic a Save and Continue para pasar a la siguiente configuración.
Una vez ubicado en la pestaña Web Service, debemos crear el servicio web que nos permitirá conectar WordPress y Moodle.
En la primera opción Select web service, desplega el menú y selecciona – Create new web service –
Ponle un nombre al servicio (el que desees) en el espacio en blanco de Web Service Name.
En Select User se mostrará un listado de los usuarios administradores de la plataforma, escoge el que desees de esta lista.
No tengo ni idea 🤷♂️ por qué se muestra por su email y no por su nombre o usuario.
Tip
Para el usuario de este servicio no es necesario que sea el Administrador principal del Moodle. Te recomiendo crear un administrador específico para este servicio.
Anota el Language Code y Site Url (que es la misma dirección web de Moodle), ya que los necesitaremos posteriormente en el WordPress.
Cuando hayas introducido todos los datos necesarios, haz clic al botón Create Web Service.
Se nos mostrará una pantalla emergente con la dirección web del Moodle: Site Url (la que anotamos antes), y el Token creado para este servicio. Anota la clave que compone el Token ya que también los necesitaremos posteriormente.
Si por alguna razón extravías estos datos, está disponible en la misma pestaña Web Service una vez guardada.
Dato
Esta pestaña también sirve para actualizar las funciones de un servicio web de Edwiser Bridge creado previamente, esto si vienes de una versión anterior del plugin.
En lugar de crear uno nuevo, simplemente selecciona el servicio web que ya tienes y haz clic a Update Web Service.
Ahora que Moodle está configurado para conectarse con Edwiser Bridge, accedemos a WordPress como administrador.
Vamos a: Edwiser Bridge > Settings. Ubícate en la pestaña Connection.
Aquí debes introducir los datos que guardamos antes: la dirección web de tu Moodle (Site Url) y el Token que creamos, en Moodle URL y Moodle Access Token respectivamente. Guarda los cambios con el botón Save changes.
Te recomiendo que antes hagas una prueba de conectividad con el botón Test connection; si todo funciona bien, debes ver un mensaje en verde que pone: Connection successful, Please save your connection details.
A continuación, ve a la pestaña General, en el campo que pone Moodle Language Code, coloca el Language Code que obtuviste del Moodle. En nuestro caso: es.
Guarda los cambios con el botón al final.
Ve nuevamente a tu plataforma Moodle donde nos quedamos antes, si por alguna razón no estas ahí, ve a: Administración del sitio > Extensiones > Edwiser Bridge > Settings.
Vamos a la pestaña WordPress Site: dale un nombre en el campo Site Name (puede ser cualquiera), en WordPress URL debes poner la dirección web de tu sitio WordPress y en Access Token, el token del servicio Moodle (el mismo que pusimos en WordPress).
Haz una prueba con el botón Test Connection, si toda la información es correcta veras un mensaje que pone: Test connection successful.
Guarda los cambios con Save and Continue para pasar a la siguiente pestaña.
Nota
Muchos de los problemas asociados a que los test de conexión fallen, se deben a puertos cerrados en las plataformas o a servicios restringidos por el servidor web.
En tal caso, recomiendo ponerse en contacto con el soporte de tu hosting para que te ayuden a solventar estas incidencias.
Una vez en Synchronization, debes ver que en el campo WordPress Sites esta seleccionado el Site name creado en el paso anterior, de no ser así, selecciónalo del menú desplegable.
Luego, selecciona todas las casillas a continuación para tener una integración completa entre Moodle y WordPress con Edwiser Bridge. Guarda los cambios.
¡Y listo! ya tienes integrado Moodle y WordPress 😍.
El plugin Edwiser sincroniza los cursos y los usuarios mediante la pestaña Synchronization.
Los cursos debes sincronizarlos manualmente así como los usuarios creados por el administrador en WordPress.
Los usuarios que se registran en WordPress mediante el formulario que dispone el plugin Edwiser Bridge y se inscriben en los cursos desde él: son automáticamente creados en Moodle y los inscribe en el curso que eligieron.
Esto es lógico, ya que la idea es que los usuarios se autogestionen, sin la intervención de los administradores de la plataforma.
También tiene la posibilidad de gestionar los pagos en WordPress mediante la pestaña PayPal Settings.
Existen otras opciones las cuales te dejo a ti para que explores y te entretengas un rato 😁.
Bueno, con eso hemos terminado, deja tus comentarios para este post, que ya sabes que me encanta leerte. Saludos.
En Evirtualplus ofrecemos servicios de instalación y configuración de Edwiser Bridge, tanto en su versión gratuita como premium (PRO).
Si quieres una cotización contáctanos, y te haremos llegar una adaptada a tus necesidades.
Ver comentarios
Espectácular tutorial, Diógenes! Muy bien detallado y explicado. Me sirvió mucho. Mil gracias.
Es muy importante para mi tu feedback Manuel.
Saludos
Hola gracias siempre sigo tus hilos, tengo una consulta si yo creo los usuarios en moodle para que accedan a los cursos desde wordpress es posible con edwiser? es decir, yo tengo un usuario en moodle ya matriculado en curso pero deseo loguearme a moodle desde wordpress es posible?
Hola Jarvis.
Como comento en el post: "Los usuarios que se registran en WordPress mediante el formulario que dispone el plugin Edwiser Bridge y se inscriben en los cursos desde él: son automáticamente creados en Moodle y los inscribe en el curso que eligieron."
Funciona de manera bidireccional. Los originados en moodle sin haber sido creados por el formulario de edwiser en Moodle, debes sincronizarlos manualmente.
Saludos.
Amigo Diógenes, muy bueno tu artículo y es de aplicación inmediata. Mi pregunta es, para las pruebas de conexión usando Edwiser Bridge con "localhost" podría yo tener el Wordpress en mi computadora con windows 10 y el Moodle en una computadora con linux (ya está instalado) que está en mi red domestica?
Saludos,
Hola Luis.
Aunque nunca lo he probado de esa manera, si hay conexión entre las dos computadoras no debería haber problema, indistintamente del sistema operativo.
Saludos.
Parcero muchas gracias por este gran POST, me sirvio muchisimo. ahora me toca el resto a mi, muchas gracias
Hola Miguel.
Me alegra que te haya servido de ayuda :D
Saludos.
Hola , una pregunta , primero instalo wordpress y luego moodle en el mismo directorio o moodle va en otro directorio dentro de la instalación de wordpress? Es decir tengo instalado wordpress en Public_html , entonces moodle deberia estar en public_html/moodle? o tendria que crear un subdominio para moodle?
Gracias de antemano
Hola Antonio.
Aunque la pregunta nada tiene que ver con el post, haré una excepción por ti ;)
Moodle lo puedes instalar tanto en un dominio o subdominio (ejemplo: sub.dominio.com), es recomendable instalarlo en su propio directorio independientemente de la forma que lo hagas por motivos de organización.
Esto lo logras desde el panel de administración de tu hosting o vía comandos.
Saludos
Hola Estimado, actualmente en la empresa donde estoy trabajamos con la última versión de moodle, quiero saber si es posible que los usuarios puedan acceder a la plataforma desde wordpress a través de un formulario de ingreso.
Con este plugin es posible, tal como lo explico: los usuarios se registraran en Wordpress y serán creados automáticamente en Moodle.
Saludos.
Hola, quería saber ¿cuales Themes de wordpress son compatibles con el plugin Edwiser Bridge? Para no necesitar modificar código u otros procesos complejos de adaptación, supongo que habrá algunos themes ya preparados, no? He visto el Edwiser RemUI (con precio de 99€) pero, tiene una apariencia que es exclusiva para formación y buscaba alguno multipropósito para ofrecer también servicios en la misma web, junto a la formación online.
Gracias,
Hola Aldo.
El plugin Edwiser Bridge funciona con cualquier tema de Wordpress.
El tema RemUI es para Moodle, y no es necesario tenerlo para usar su plugin.
Espero te ayude.
Saludos.
Ah perfecto, gracias.
hola buenas, interesante post, yo quisiera hacer lo mismo pero con drupal, no se si me pudieras guiar, sera que se pueden realizar pasos similares??? gracias.....
Hola Aracely.
Drupal tiene un conector, pero funciona hasta la version 2.x de Moodle, al no estar actualizado, no puedo recomendarlo. Lamento no poder ayudarte :(
Saludos.
Buenas noches, a ver si me puedes ayudar, lo he hecho todo paso a paso pero al probar la conexion con el boton de test me da
Please check Moodle URL !
si copio y pego la url de moddle en cualquier navegador me lleva a la pagina principal sin problemas.
por que podria ser?
Hola Francisco.
Siempre es complicado hacer diagnósticos con tan poca información.
De todas maneras, revisa que el usuario autorizado que seleccionaste en Moodle sea el administrador.
Ejecuta las pruebas que ponen en este post de los foros de soporte del plugin, puede ayudarte a dar con una solución.
Saludos.
Buenos dias Diógenes, gracias por responder a mis dudas, ya lo tengo solucionado y lo dejo por aqui antes que otros se vuelvan igual de locos buscando una solucion.
Mi problema era que el hosting me estaba bloqueando la conexion a causa de unas reglas de su Firewall, se lo comente y me lo solucionaron en 5 minutos, con lo que recomiendo a cualquiera en la misma situacion que hable con su hosting para asegurarse que todo esta ok.
Excelente paso a paso, pero cual es la url de mi localhost de mi curso moodle?
al querer sincronizar con edwiser inserto el token pero la url me aparece
cURL error 7: Failed to connect to 127.0.0.1 port 80: Connection refused
gracias
Saludos Leticia.
Lo que esta diciendo tu servidor es que no esta haciendo conexión con tu localhost, esto puede deberse a varias razones, la mas común es que el firewall lo bloquea.
La dirección url es precisamente la que te muestra: 127.0.0.1 o localhost.