Description
Marivya Lesson Planner helps private teachers keep track of their students, lessons and shared materials.
It includes a minimal Student Portal that students can open via a magic link (token) or PIN, so they can see upcoming lessons and notes without creating an account.
Highlights
– Custom post types for Students, Lessons, and Materials
– Calendar-friendly lesson data (date, time, duration, status)
– Materials linked to a student or global
– Student Portal access via magic link (token) or PIN
– Rate-limited PIN attempts and HMAC-signed session cookie
– Admin AJAX for moving lessons on a calendar
– WordPress privacy integration: personal data exporter and eraser
– No telemetry. No external services required.
Pro (optional add-on)
– Recurring lessons, advanced reminders, templates, richer student portal, and more.
– A gentle “Pro” upsell is shown only on plugin screens (no global banners).
This plugin is independent and not affiliated with any LMS vendor.
How it works
- Create a Student and start adding Lessons (date, time, duration, notes, homework).
- Optionally attach Materials to a student.
- Open a student and use the Student Portal access box to:
- Generate a magic link (time-limited token) and copy/send it,
- Or set a PIN (hashed and never emailed).
- Students access the portal from the link or by PIN. A secure session cookie keeps them logged in for 30 days.
Privacy
- Includes a personal data exporter and eraser (
Tools Export/Erase Personal Data). - Student portal session cookie:
marivya_lp_portal(HTTP-only, SameSite=Lax, Secure on HTTPS), expires in 30 days. - Magic links expire after a chosen number of days (default 7).
- No personal data is sent to third parties.
Installation
- Upload the plugin files to the
/wp-content/plugins/marivya-lesson-planner/directory or install via Plugins Add New. - Activate the plugin through the Plugins screen in WordPress.
- A Student Portal page is created automatically (you can change the URL later).
- Go to Students and create your first student. Add lessons/materials as needed.
FAQ
-
How do I send a magic link to a student?
-
Open a Student in the admin and use the Student Portal access box to generate and copy the link, or send it via email from the same screen.
-
Can I use a PIN instead of a link?
-
Yes. Set a PIN in the same Student Portal access box. PIN attempts are rate-limited and the PIN is stored as a hash.
-
Where is the portal page URL set?
-
A portal page is created on activation. You can change the base URL used in student access links in Marivya Lesson Planner Settings Student Portal.
-
Does the plugin add a frontend login or user accounts?
-
No. Students access their portal via a time-limited token link or a PIN; no WP user accounts are created.
-
How do I export or erase personal data?
-
Use WordPress tools: Tools Export Personal Data / Tools Erase Personal Data. The plugin registers its own exporter/eraser.
-
Does uninstall remove all data?
-
By default, options and sensitive portal metadata are removed, while CPT content (students/lessons/materials) is preserved.
You can force full removal via:
define( ‘MARIVYA_LP_DELETE_ALL_DATA_ON_UNINSTALL’, true );
or by hooking:
add_filter( ‘marivya_lp_uninstall_remove_content’, ‘__return_true’ );
Reviews
There are no reviews for this plugin.
Contributors & Developers
“Marivya Lesson Planner” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Marivya Lesson Planner” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.4.2
- Improved WordPress compatibility (standard i18n loading, clearer security/permissions messages).
- Portal link now uses your saved Portal URL setting.
- Portal “page created” notice is shown once after activation.
1.4.1
- Fix: calendar navigation and AJAX config.
- New: click an empty calendar slot to create a lesson (prefills date/time + student).
- New: student filter in weekly calendar.
- Improved: status styling in calendar (planned/done/cancelled).
- Improved: notification scheduling uses site timezone; added “send to teacher email”; ICS export includes student name + meeting URL.
- New: Student Portal URL setting.
- Hardening: improved sanitization for emails/URLs.
1.0.0
- Initial public release.
- Students, Lessons, Materials CPTs.
- Student Portal with magic link and PIN.
- AJAX endpoints for calendar events and moving lessons.
- Privacy exporter/eraser integration.
- Gentle Pro upsell.
