Connecting Moodle with Joomla! using Joomdle –

The need to integrate services in Joomla! leads us to use bridges (bridges) that carry out this task transparently to the user who will be the recipient of said services, but not always with a friendly integration for the developer or implementer of the service in the back end.

Hosting Mautic QuickStart -50% with support in Spanish
24 hours and free training

Send up to 1,000,000 emails/year. Mautic support in Spanish 24 hours, 365 days

Integrating the services with each other allows unifying accesses, managing users in a common way and in the case of connection of Joomla! with Moodle via Joomdle It also allows you to manage from a single centralized place the courses, the students, and all the administrative tasks that we would normally have to carry out in different administration panels, thus duplicating all the processes.

This extension is developed by the Spanish Antonio Duran Terres and released for Joomla! 1.5 or 1.7, currently compatible with Joomla 2.5 and 3.x, under a non-commercial license which allows the integration of the tool eLearning known and based on open source code called can connect with Joomla! thanks to Joomdle and the efforts of its developer for always keeping it updated and well documented.

The first and fundamental step is have Moodle installedpreferably the stable version, in this case we rely on Moodle 2.2 and we start from the basis that it has all the services configured, except those related to the connection with Joomla! since for this process we will use the extension joomdle.

For install moodle We recommend consulting the article published in this blog titled written by John Marreros.

Install the Joomdle component in Joomla!:

We must download the component from the author’s website. It is a file that in turn contains packed .zip files that we must unzip to locate the file that contains the necessary component, modules and plugins to install in Joomla!. We locate the file “joomdle-joomla-package” and previous backup, preferably with , we will proceed to install from the Extension Manager, whether in Joomla! 1.5 as in Joomla! 1.7.

This file installs the following extensions:

  • Joomdle Component.
  • mod_joomdle_courses module, Site.
  • mod_joomdle_my_courses module, Site.
  • mod_joomdle_calendar module, Site.
  • mod_joomdle_my_grades module, Site.
  • mod_joomdle_mentees module, Site.
  • mod_joomdle_abc module, Site.
  • mod_joomdle_coursenavigation module, Site.
  • mod_joomdle_coursemates module, Site.
  • Joomdle Xmlrpc plugin.
  • Joomdlehooks plugin, User.
  • Joomdlesession plugin, System.
  • Joomdlestore plugin, System.
  • Courses plugin.
  • Coursecategories plugin.
  • Coursetopics plugin.

The downloaded package also includes some plugins to properly configure Moodle for the use of Joomdle and that need to be installed in Moodle, always after a backup copy of the current installation. We must check that the plugins are enabled after their installation from the Plugin Manager.

See also  I can't access my website because of Google Recaptcha

Features and improvements of the Joomdle version:

  • New view of the course that shows the contents of the course.
  • Added options to the “my courses” and link view modules to see new courses, in Moodle.
  • New coursemates module and view.
  • New course navigation module.
  • Design change for all views, to improve appearance.
  • Integration with Hikashop has been added.
  • New content plugin to display course details in articles.
  • Added configuration option to the “My Courses” view to display courses by category.
  • Avatar sync with Community Builder has been added.
  • Fixed bug that introduces a complementary line that breaks the description of Moodle 2.0 courses.
  • Fixed information error about IP address restrictions.
  • Fixed incompatibility with Moodle 2.2.
  • Fixed avatar issue in Moodle 1.9 when additional info source is set to “None”.
  • Some fixes from SEF (Jason Lambert).
  • Added category description in current category view (Jason Lambert).
  • Modified view wrapper for Moodle 1.9.

Configure Joomdle and Moodle

Installing the Joomdle “auth_joomdle” plugin in Moodle:

We must install this plugin by selecting one of the available files depending on the Moodle version, in this case we will choose the file for Moodle version 2.2 from the “moodle20” folder.

Uploaded the file to the moodle/auth/ folder and unpacked and deleted the .zip file, after reloading the view we will see that the /joomdle folder is created with its corresponding files as explained below. Later we must enable it.


  • From the Joomdle configuration we must enter the Moodle url so that later both tools can see each other.
  • You also have to set the version of Moodle in use.
  • Insert the Moodle 2.0 Authentication Token, previously generated in Moodle. (This step is documented near the end of this article.)

In Moodle we must enable the corresponding Web Services:


In Joomla! we must enable the Web Services in the Global Configuration:

Enable Web Services in Joomla Global Settings, under System, Global Settings, System tab.


Install the Moodle Authentication Plugin for Joomdle:

The file must be uploaded “auth_joomdle.zip”locatable in the Joomdle package, to the path moodle/auth/ and unzip it, which generates a folder called /joomdle which contains the plugin files for Moodle.

Enable Joomdle XMLRPC Plugin in Joomla!:

You have to enable the Joomdle XML-RPC Plugin in the Joomla! administrator, Extensions, Plugin Manager.

See also  remove related products woocommerce


Activate XML-RPC protocols in Moodle:

Joomdle uses XML-RPC to connect to Moodle. You must select the step Enable Protocols, from the list and activate XML-RPC. You will need to make sure that your server has XML-RPC support. See the PHP prerequisites for more information. Some servers may also require you to enable the SOAP protocol.

Site Administration, Extensions, Web Services, Manage Protocols.


Create a specific user in Moodle to connect with Joomdle:

Moodle web services require a user for the connection with Joomdle. East must be different from the user that manages Moodle and it should not be an administrator user either, to which we will give the appropriate permissions.

Site administration, Users, Accounts, Add user.

We create a user, for example “joomdleconnector” with its corresponding password.

Check user permissions to connect with Joomdle:

The user created to connect to Joomdle must be given the appropriate access to the XML-RPC web services. For this we define a new role and assign it to the user and we give this role access to web services.

Site administration, Users, Permissions, Define roles.



Enable role capabilities for the user:

  • use protocol XML-RPC webservice/xmlrpc:use: Allow
  • use protocol SOAP webservice/soap:use: Allow
  • See mod/forum discussions: view discussion: Allow


Assign the user to the newly created role:

After creating the new “Web Services” role, add the Joomdle web services user (eg joomdle connector) to this role.

Site administration, Users, Permissions, Assign global roles.


Add a new Joomdle service in Moodle:

Next we must add a new “service” for Joomdle. This “service” allows you to define what Joomdle can do in Moodle.

Site Administration, Extensions, Web Services, External Services.

Since we have previously installed Joomdle, now we can perform the task of add features to the Joomdle external service in Moodle. It is possible that if the functions for the Joomdle plugin do not appear, it is necessary to first check the plugins to verify that we have installed and enabled the plugin correctly.



Site Administration, Extensions, Web Services, External Services, Features, Adding Features.

Now the new features for Joomdle will be displayed and we can select and add them to the connector user in Web Services.

Once added, a list titled “Adding features to the Joomdle service” which will show all the new features added for the connector user.

Create the Moodle token for Joomdle:

Need create a token in Moodle which should be entered on the Joomdle settings page in Joomla!. Without this token Joomdle will not be able to connect to Moodle, even if everything else is configured correctly.

See also  Verify Domain Ownership Using DNS Record

Site Administration, Extensions, Web Services, Manage Tokens, Add


It is possible that under certain configurations, especially if we have not completed any process, a warning or error is displayed once the token has been created.

This is because the user does not have the capabilities required for the service. Such missing capabilities must be added to the user’s roles in order to use the service. It is solved by deleting the token and creating it again but selecting the service of joomdle and not from “mobile services”.

After generating the correct token we must enter it in the component configuration joomdle in the back end of Joomla!, Components, Joomdle, Settingalong with the url of the Moodle installation and any other configurations that we need to adjust for our service.

Manage identification in Moodle and assign Joomla! URLs:

Site administration, Extensions, Identification, Manage identification.


If the process has been carried out correctly once we are in Joomla!, in the Joomdle componentand we perform a System Check, all enabled services should be shown with a green cross. If any appear in red We will have to review the entire process again to see at what point we have left a configuration undone.

From this moment Joomdle is ready to connect with Moodle and manage users and courses.

There are many further details to go over in the Joomdle configuration in Joomla! to achieve an optimized configuration, but these will be cause for future articles where we will address specific details about such excellent extension that allows us to connect Moodle with Joomla! to manage your courses, students and tasks of the extension.

Despite being a very elaborate configuration that both Moodle and Joomdle need (to a lesser extent) It is important to pay close attention to the entire process, detail by detail, in each of the steps, in order to guarantee correct operation and that after the process the connection between both tools is as desired.

Later we can delve into the details of the configuration of both tools in order to fine-tune them and incidentally improve securityamong other details, to prevent users from logging directly into Moodle and doing so…

Loading Facebook Comments ...
Loading Disqus Comments ...