Here is a moodle plugin we developed to extend the moodle registration form to have step wise fields and a better layout than the default signup. Yours can also be extended the you want.
In the example moodle signup form developed in this demo, we are Creating a stepwise (multi-step) registration form in Moodle like:
-
Introduction
-
Personal Info
-
Profession
-
Finish

This requires overriding the default moodle signup form or building a custom local plugin that replaces the signup.php
flow. Moodle doesn’t support multi-step registration out of the box, so you need to implement it yourself.
Specifically, we will create a local moodle plugin that handles all these and is customizable just the way you like it.
How extended moodle registration form works
β
Best Approach: Create a Custom Local Plugin (local/stepregister
)
This plugin will:
-
Replace the standard signup process
-
Use multiple steps (stored in session)
-
Collect data across pages
-
Submit and create the user on the final step
β Step-by-Step: Install Plugin via Moodle Admin
π 1. Ensure Proper ZIP Structure
Before uploading, make sure your moodle plugin ZIP archive you downloaded from payment-plugins.com follows this structure:
β
Inside the ZIP file, the top-level must be the stepregister/
folder.
βοΈ Do not zip the files directly without this folder.
π§© 2. Upload via Admin Interface
-
Login to Moodle as Admin
-
Under βInstall plugin from ZIP fileβ:
-
Click Choose a file
-
Select your
stepregister.zip
-
Click Install plugin from ZIP file
-
-
Moodle will automatically detect it as a local plugin.
-
Go to:
-
Ensure guest access works
-
Walk through steps
-
Register a test user
-
Ensure guest access works
-
Walk through steps
-
Register a test user
-
βοΈ 3. Install & Upgrade Moodle Database
-
Moodle shows plugin validation (green checkmarks β ).
-
Click Continue
-
On the βPlugins checkβ page, scroll and click:
β βUpgrade Moodle database nowβ
This will:
-
Install your plugin
-
Run the
install.php
to create all custom user fields
π§ͺ 4. Test It
After install:
-
Visit:
-
-
Ensure guest access works
-
Walk through steps
-
Register a test user
5. Add a Link to Registration Page
You can link it from the login page by editing:
-
Site administration β Appearance β Theme settings
-
In βLogin page footnoteβ, add:
<p>Don’t have an account? <a href=”/local/stepregister/index.php”>Register here</a></p>
Or use a custom theme template override.
π§Ό Summary
Task | Status |
---|---|
Plugin ZIP structure valid | β |
Uploaded via Site Admin | β |
Installed and DB upgraded | β |
Custom profile fields created | β |
User creation and login working | β |
Link added to login page | Optional but Recommended |
brianguru –
Extending moodle registration fields and styles with this plugin is as easy as ABC