Wordpress to Moodle pass through authentication plugin (wordpress end). Takes the user that is logged onto wordpress and passes their details over to Moodle, authenticates them, enrols them in one or more courses, then opens the course.
Demo / Further documenation
Go to my wordpress demo site and register yourself, then try the links.
E-Commerce integration (New!)
This plugin automatically integrates with MarketPress and WooCommerce. All you need to do is upload a text file as your digital download that contains the group and/or cohort names you want the user to enrol into, and it's business as usual. So you might have a file called "HistoryCourse-wp2moodle.txt" which contains your passthrough parameters, for instance:
cohort=History101 group=semester2_2015 course=abc123
Upload this file as your digital download, and that's all. A sale will cause a 301 redirect to the configured Moodle server with the SSO token.
Activating and configuring the plugin
Note, you must to rename the zip to be just 'wp2moodle.zip' before you upload the plugin to wordpress. If the zip extracts to a sub-folder, it won't work!
- Upload this to your wordpress (should end up being called /wp-content/plugins/wp2moodle/)
- Activate the plugin
- Click wp2moodle on the wordpress menu
- Set your moodle url (e.g. http://your-site.com/moodle/)
- Set the shared secret. This is a salt that is used to encrypt data that is sent to Moodle. Using a guid (http://www.newguid.org/) is a good idea. It must match the shared secret that you use on the Moodle plugin. (https://github.com/frumbert/wp2moodle-moodle)
- Other instructions are available on the settings page.
How to use the plugin
- Edit a post or a page
- Use the moodle button on the editor to insert the shortcode block around the text you want linked
- When authenticated as subscriber, contributor, etc, click on the link.
Note: If the user is not yet authenticated, no hyperlink is rendered. It's also best to avoid linking the admin accounts.
[wp2moodle class='my-class' cohort='course1' target='_blank']<img src='path.gif'>Open my course[/wpmoodle]
[wp2moodle group='group2']A hyperlink[/wp2moodle]
`class`: the css classname to apply to the link (default: wp2moodle) `target`: the hyperlink target name to apply to the link (defaut: _self) `cohort`: (optional) the id [mdl_cohort.idnumber] of the moodle cohort in which to enrol the user (can be a comma-seperated list for multiple enrolments) `group`: (optional) the id [mdl_groups.idnumber] of the moodle group in which to enrol the user (can be a comma-seperated list for multiple enrolments) `course`: (optional) the id [mdl_courses.idnumber] of the moodle course in which to enrol the user (can be a comma-seperated list for multiple enrolments) `authtext`: (optional) the text that appears instead when the user is not yet logged on `activity`: (optional, number) the numerical index of an activity to open after enrolment. E.g. "2" will attempt to open the second activity in the destination course.
mcrypt needs to be present and available in your php installation.
GPL2, as per Moodle.