Introduction
Moodle Akeneo PIM Connector: With the help of this module, you can connect your Moodle LMS (Learning platform or Course Management System) with the Akeneo PIM (Product Information Management) platform as well as manage content easily.
You can push data from Akeneo into the Moodle admin. It works with simple products. Moodle Akeneo Connector also exports the Akeneo categories as course categories.
What is Moodle? – Moodle is an open-source learning platform created to provide instructors, learners with a single powerful, secure, and personalized learning environment. Anyone can download the software on the webserver and meet their needs.
Please Note – This module is compatible with Community Edition, Enterprise Edition, and Cloud (PaaS/Flexibility) Edition of Akeneo.
Basic Requirements:
- This module works with Akeneo 2.0.x, 2.1.x, 2.2.x, 2.3.x, 3.0.x, 3.1.x, 3.2.x, 4.0.x and 5.0.x. Download Akeneo from here
- Node and Yarn packages need to be installed.
- Also works with Akeneo Cloud Flexibility Mode which is a PAAS Edition of Akeneo
Features
- Export categories from Akeneo to Moodle as Moodle categories
- Products Export from Akeneo to Moodle as courses.
- Export product images as course summary images.
- Moodle Akeneo PIM Connector is compatible with the latest Akeneo version 5.0.x
- Filter Data to be exported based on category, family, completeness, time conditions, Identifier (SKU).
- Export data on the basis of language.
Video Tutorials
Check out the following video tutorials below:
How to create Moodle credentials?
How to do module configuration in Akeneo?
How to add courses from Akeneo to Moodle?
Setup Credentials In Moodle
Follow the below steps to create Moodle Credentials to be used in Akeneo
- Sign up in your Moodle account then go to Dashboard.
- Create external services from your Moodle Admin Panel. Go to Site Administration > Plugins > Web Services > External Services > Add
- Generate a token from the Moodle Admin panel. Go to Site Administration > Plugins > Web Services > Manage Tokens > Add
- Enable Rest Protocol from the Moodle Admin Panel. Go to Site Administration > Plugins > Web Services > Manage Tokens > Manage Protocols
- Add needed function in the created external services. Go to Site Administration > Plugins > Web Services > External Services > Click on Functions in your service name
Add these functions to your customer services.
- Find Your External Service Token and domain name after that put in the Moodle Akeneo connector.
- Now your connector is ready to use.
Module Installation for Version 4.0.x to 5.0.x
1- Composer Installation
2- Manual Installation
Please follow these steps for installing Moodle Akeneo Connector module in your Akeneo PIM platform.
- Unzip the respective extension zip then merge “src” folder into akeneo project root directory.
- Goto config/Bundles.php then add line:
Webkul\MoodleConnectorBundle\MoodleConnectorBundle::class => ['all' => true]
in return array.
- Copy the “config” folder into akeneo project root directory for routing.
- Run this command after ssh to your akeneo server by the terminal
php bin/console cache:clear --env=prod && php bin/console wk_moodle:setup:install --env=prod
- If you are using php-fpm. Then you need to restart the php-fpm services and apache web server.
For Akeneo 5
sudo service php-fpm7.4 restart
For Akeneo 4
sudo service php-fpm7.3 restart
To run the Quick export in Akeneo 5.0.x, you need to run the below command.
Install composer dependency
php -d memory_limit=4G /usr/local/bin/composer --prefer-dist --no-scripts require navneetbhardwaj/akeneo-quickexport-configurator;
After that, register bundle in config/bundles.php
return [ \WebkulQuickExportConfiguratorBundle\QuickExportConfiguratorBundle::class => ['all' => true], ];
Define routing to create a file in the config/routes/wk_quick_export.yml
wk_quick_expoort: resource: "@QuickExportConfiguratorBundle/Resources/config/routing.yml" prefix: /
Docker Installation Command :
For Akeneo 5
alias docker_php='docker-compose run -u www-data --rm php php'; alias docker_yarn='docker-compose run -u node --rm node yarn'; docker_php bin/console cache:clear --env=prod; docker_php bin/console pim:installer:assets --symlink --clean --env=prod; docker_php bin/console d:s:u --force; docker_yarn run webpack; docker_yarn run update-extensions; docker_yarn run less;
For Akeneo 4
alias docker_php='docker-compose run -u www-data --rm php php'; alias docker_yarn='docker-compose run -u node --rm node yarn'; docker_php bin/console cache:clear --env=prod; docker_php bin/console pim:installer:assets --symlink --clean --env=prod; docker_php bin/console d:s:u --force; docker_yarn run webpack; docker_yarn run less;
Module Installation for Version 2.x to 3.x
Please follow these steps for installing Moodle Akeneo Connector module in your Akeneo PIM platform.
- Unzip the respective extension zip then merge “src” folder into akeneo project root directory.
- Goto app/AppKernel.php after that add the following line in function registerProjectBundles()
new Webkul\\MoodleConnectorBundle\\MoodleConnectorBundle(),
- Goto app/config/routing.yml then add these lines at top of the file
moodle_connector: resource: "@MoodleConnectorBundle/Resources/config/routing.yml" prefix: /
-
- You have to navigate to Akeneo Installation Directory(Ex. cd /opt/bitnami/apps/akeneo/htdocs ). Run this command after ssh to your akeneo server by the terminal.
php bin/console cache:clear --env=prod && php bin/console wk_moodle:setup:install --env=prod
- You have to restart your web server like Apache, Nginx. Run the command for Apache web server.
sudo service apache2 restart
-
If you are using php-fpm. Then you need to restart the php-fpm services.
sudo service php-fpm7.2 restart
Common Issues After Installation
It might happen that even after proper installation, upon opening your Akeneo admin dashboard, you see a loading screen. In that case, do check for the following solution:
- Webpack Installation: If you get the below error
It means that web pack is not installed in your system. Run the following command
npm install --save-prod webpack npm install
- Module routing.yml is not configured properly. Re-check the routing.yml file as mentioned in the 3rd step of Module Installation
- Clear your browser cache.
SETUP CREDENTIAL IN AKENEO
After successfully installing the module in Akeneo, you need to set up the Moodle API credentials in Akeneo. Please log into Akeneo after that follow Moodle Connector>Setup Credentials.
In this, you need to enter the External Service Token and Domain name of your Moodle.
- External Service Token
- Domain name
Moodle Mapping Setting
In the Moodle Mapping Setting tab, you need to match the product fields between Moodle and Akeneo. You need to select the correct Akeneo attribute that matches to the Moodle product information.
- Full Name
- Summary
- Format
- Course Start Date
- Course End Date
- number of weeks/topics
- The largest size of the file that can be uploaded into the course
- Report shown
- Available to Student
- Completion Notify
- Enable Completion
- Name of the Force Theme
Status mapping information remains the same on both ends. So if a product is disabled in Akeneo, it will be disabled in Moodle as well.
Other Mapping:
In the other mapping, we can manage attributes to be used as Image and File.
Locale Mapping Setting
A locale is a set of parameters that define the merchant language, country, and any special variant that the user wants to see. A merchant can set his locale accordingly.
- Akeneo Locale
- Moodle Locale Id
Creating a product in Akeneo
After that to create a product in Akeneo, go to navigate to Products then click Create button. Now, you need to choose product type – as Product or Product Model.
Product – Select this type for creating simple and virtual products.
Product Model – Select this type for creating a configurable product with variations.
Now enter the required SKU, choose a family, then click the Save button.
Product Family – A family is a set of attributes that will be the same for all products belonging to a family. The product family represents products type, imposes product information structure and defines the list of attributes for a product that it belongs.
Add Product Details
Then you need to provide information about the product. First, select the Channel and Locale after that enter the SKU then name.
Select Attribute
For adding product information, select attribute options you require. You can also create new options for the attribute. Following Attributes from Akeneo are supported for export:
- Moodle_isBundle
- Date
- MPN
- Image
- Format
- Description
- Size
Upload Image
After that click the upload picture section or use the drag and drop feature to add product image.
Multi-Lingual Information
Add information to other languages and store views.
Add New Attribute Option
If an attribute option is missing for a select attribute type (simple or multi-select), you can directly add it to the Product Edit Form. Enter a Code and Label values, then click Save.
Select Category
After entering all the product information, save your changes
After that go to Product Navigation then select Categories.
Moodle Export Job
Now to export your product data you need to create a job profile and execute it. First, go to Exports>Create Export Profile after that enter a unique code, label then select a job profile.
Job Profiles
Moodle Product Export: Exports everything (categories, course, export all) based on filters in a job. A product must have a category to be included in the export job.
Here you will find three different types of export job profiles for every use case:-
Export All – Exports everything (categories, course, export all) based on filters in a job. A product must have a category to be included in the export job.
Export Course – It Exports only the courses in a category. You can choose the course that you want to export to Moodle.
Moodle Export Category – It exports only the category. If you have more than one category then you can export each category.
If you choose the parent category it will export all the category. You can use the filter to send a single category.
Filter The Data
After that go to the Content section then select the following options:
Channel – Each export job can only be linked to one channel, please select the relevant channel of products to
export.
Locales – Select one or more Locales depending on your requirements.
Attributes – You can select which product attributes you want to export all or few of them. Click the Edit button to select the attributes.
Filter The Products
Now you need to decide which products to export on Moodle.
Family
Select one or more product family to export to Moodle. If you want to export products belonging to specific families, click on the drop-down list then click on the families to add in the field.
Status
You can also filter on the status of your products, three options available:
•
Completeness
This enables you to filter on completeness of selected locales. Four options on completeness are proposed:
Time Condition
After that you can now export your product within a specific time condition.
- No date condition (default option) – Products are not filtered using time condition.
- Updated products over the last n days (e.g. 6) – To filter the products that were updated during the last six days, enter 6 value.
- Updated products since this date – To filter the products that were updated during a specific date, select a date.
Category
After that you can configure the categories of the channel tree you want to export. For example, you want to export the clothing products to update.
By default, all categories are exported. To select a category, click on the Edit button the categories of the channel tree are displayed.
Identifier
You can make a selection of identifiers to export by adding them to the SKU field. You can copy and paste a list of identifiers, separated them by using comma, space or line breaks.
After that click Save button after that follow the next step to execute this profile.
Export Now
After creating the export profile, click on the Export Now button. The execution of the export process will begin, the page will refresh continually to update the information.
Execution Process
Wait for the execution process to complete and check the errors. After the completion of the export job, the products will appear in Moodle product list as courses.
Moodle Courses Category List
As you can see that the following courses category have been imported from Akeneo. The merchant can view the courses category in Moodle.
In the Moodle dashboard, your course is visible like this.
Support
So, that was much about the User Guide of Moodle Akeneo PIM Connector for any queries or doubts reach out to us at [email protected]. You can also raise a ticket at our HelpDesk System.
Please explore our Akeneo Development Services and Quality Akeneo Extensions.
Current Product Version - Product Version 3.0.0
Supported Framework Version - Moodle Shopping Akeneo connector version 2.0.x, 2.1.x, 2.2.x, 2.3.x, 3.0.x, 3.1.x, 3.2.x, 4.0.x and 5.0.x