- PHP 66%
- JavaScript 30.2%
- CSS 3.6%
- Shell 0.2%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| css | ||
| includes | ||
| js | ||
| languages | ||
| .gitignore | ||
| LICENSE | ||
| README.md | ||
| register-enrol.php | ||
register-enrol
A plugin allowing learners to login or register (as WP users) and enrol (and unenroll) in OERu courses (subsites).
License
This plugin is licensed under the GNU General Public License (GPL) version 3.
Code of Conduct
This project has adopted the Contributor Covenant Code of Conduct - see the latest version: https://www.contributor-covenant.org
Plugin Purpose
The OERu offers tertiary (university) level online courses (each course is a subsite of the OERu's course.oeru.org WordPress multisite) for learners, who can participate either anonymously or (for their own benefit) as registered WordPress users.
Registered users can choose to formally enrol in one or more OERu courses.
Being registered confers benefits like proof of participation, maintenance of "state", e.g. previously filled in form values (i.e. via session variables), as well as more social benefits like being able to post messages to fellow learners via individual course 'WEnotes Feed' pages or register a personal blog feed to be scanned for course-related posts.
This plugin provides streamlined services to allow a learner who wants to register for the Course site to do so, and then, as an authenticated (logged in) WordPress user, gives them the ability to easily enrol (or unenrol) in any of our catalogue of courses.
Demonstrations
The register enrol plugin is in use in a number of places. Here're a few demonstrations - click on the 'Log in/Create account' link in the top corner to see the interface:
- https://course.oeru.org/lida103/ (English language version)
- https://course.oeru.org/lida103-fr/ (French language version)
- https://pacificopencourses.col.org/ds4oers/
- https://course.oeglobal.org
Enabling the plugin
Crucially: for the plugin to work, the WordPress theme being used must implement a suitable HTML node in the desired part of its navigation which must have HTML attribute of "ORE_CONTAINER" as defined in the main plugin file.
Features
- fully multisite aware, allowing authenticated users to "enrol" in networks/blogs/subsites(the WP nomenclature is somewhat inconsistent), what we call "courses".
- confirmation of all changes in authentication (registered, logged in, logged out) and course enrolled or unenrolled state
- a login status indicator tab showing the user's status at all times, e.g. "anonymous visitor", "registered but not logged in", "logged in", and in the context of a course "not enrolled" or "enrolled".
- modal dialogs for user interaction and messaging
- mobile compatible layout and user interface
- logs the participation of logged in learners (WP users) in courses (subsites)
- provides a dashboard of enrolled courses for logged in learners
- localisation for French
Requirements, Use Cases, and Future Plans
See our wiki for discussions on these things.
Userful references:
- For rewriting the URLs of login-related activities, the custom-login-url plugin is very helpful
- localisation howto: https://www.codetab.org/tutorial/wordpress-plugin-development/internationalization/localization/
Generating the POT file for localization
This is what I run on my development host, where I access the wordpress instance locally via http://wpms.troy
docker-compose exec --user=www-data php wp i18n make-pot --slug=http://wpms.troy/plugins/register-enrol --domain="ore-register-enrol" --include="includes/*.php" wp-content/plugins/register-enrol wp-content/plugins/register-enrol/languages/register-enrol.pot'