=== Course Tracker - Simple WordPress Lesson Progress & LMS Navigation === Contributors: erikzett Donate link: https://rankbydesign.com/course-tracker-donate Tags: lms, course, lesson, progress bar, lesson completion, course navigation, track lessons Requires at least: 5.0 Tested up to: 7.0 Stable tag: 1.1.8 Requires PHP: 7.0 License: GPL2 License URI: http://www.gnu.org/licenses/gpl-2.0.html Lightweight WordPress LMS plugin to track lessons, student progress, and completions with visual progress bars, checkmarks, customizable navigation, and flexible shortcode-driven layouts. == Description == **Course Tracker** is a lightweight, shortcode-driven WordPress plugin that lets you **build your own mini LMS directly inside WordPress** — no coding or external LMS required. It’s powered by the **WordPress Menu Builder**, which you use to structure your course outline. Each menu item (lesson) automatically becomes part of a side navigation panel — complete with **progress checkmarks and arrows** that update as students mark lessons complete. Fully compatible with **Classic Editor, Gutenberg, and all major page builders** such as Bricks Builder, Elementor, and Beaver Builder, Course Tracker helps you track lessons, show progress bars, customize navigation text, and guide students through your course in a clean, visual way. Designed for creators who want course progress tracking without complex LMS setups, it delivers everything you need to create a motivating learning experience — fast, flexible, and privacy-friendly. ### Key Features - **Shortcode-Driven:** Add course navigation, progress bars, and completion buttons anywhere — no coding required. - **Menu-Based Navigation:** Uses the native WordPress Menu Builder to create your course outline and automatically show lesson checkmarks and arrows as students progress. - **Lesson Completion Tracking:** Students can mark lessons complete and instantly see their updated progress. - **Standalone Progress Bar:** Display a progress bar independently from the course outline using the new `[ctrkr_progress_bar]` shortcode. - **Custom Progress Text:** Customize wording like “lessons”, “modules”, or “sections” using shortcode attributes and dynamic tokens. - **Progress Bars & Checkmarks:** Display lesson progress visually with customizable bars, icons, and completion text. - **Custom Slide-in Content:** Add custom HTML, notices, buttons, downloads, or shortcodes below the slide-in navigation panel. - **Navigation Styling Controls:** Fine-tune navigation spacing, colors, active states, and checkmark styling directly from settings. - **Build Your Own LMS:** Create a complete learning experience directly inside WordPress — no third-party LMS plugins or subscriptions needed. - **Works with All Editors:** Compatible with Classic Editor, Gutenberg, Bricks Builder, Elementor, and other page builders. - **Lightweight & Fast:** Built for speed, simplicity, and compatibility with any theme. - **Save & Restore Progress:** Students can export or import progress data anytime — no external accounts or sync required. - **Privacy-First:** All progress data stays in your WordPress database, never sent elsewhere. == Installation == 1. Upload the plugin files to the `/wp-content/plugins/course-tracker` directory or install via the WordPress plugin installer. 2. Activate the plugin through the **Plugins** menu in WordPress. 3. Go to **Settings → Course Tracker** to select your course navigation menu and configure options. 4. Add shortcodes (see below) to your lesson or course pages. == Usage == After setup, use these shortcodes in your pages or templates: * `[ctrkr_nav]` — Displays course navigation with checkmarks. * `[ctrkr_complete_button text=" "]` — Adds a button to mark the current lesson as complete. * `[ctrkr_nav_arrows]` — Adds Previous/Next lesson arrows. * `[ctrkr_course_outline]` — Shows progress bar and course outline. Example: `[ctrkr_course_outline show_progress="no"]` Displays the course outline without the progress bar. * `[ctrkr_lesson_position]` — Displays text like Lesson X of Y. Example: `[ctrkr_lesson_position text="Module {current} of {total}"]` * `[ctrkr_progress_text]` — Displays Completed X of Y lessons with navigation arrows. Example: `[ctrkr_progress_text text="Completed {completed} of {total} modules"]` * `[ctrkr_progress_bar]` — Displays a standalone progress bar. Example: `[ctrkr_progress_bar text="{completed} of {total} modules complete ({percent}%)"]` **Example:** `[ctrkr_nav]` is intended for users who want to manually place course navigation in sidebars, templates, or custom page layouts. For easier setup, Course Tracker also includes an optional automatic slide-in navigation panel available in plugin settings. When enabled, manual insertion of `[ctrkr_nav]` is not required. Add `[ctrkr_complete_button]` to lesson pages so students can manually mark lessons complete when using shortcode-based layouts. == Settings == - **Course Navigation Menu:** Choose the WordPress menu that represents your course. - **Show Navigation Title:** Display a title above the course navigation. - **Slide-in Tracker Panel:** Optionally enable a floating slide-in menu for navigation. - **Custom Slide-in Content:** Add custom HTML, buttons, notices, downloads, or shortcodes below the slide-in navigation. - **Navigation Styling Controls:** Adjust navigation spacing, active link behavior, and checkmark appearance. - **Styling:** Customize button colors with the built-in Button Styler, or fine-tune further using the WordPress Customizer or your theme's CSS. - **Student Reports:** View student progress and export to a spreadsheet. == External Services == This plugin connects to [SureCart](https://surecart.com/) via `api.surecart.com` for license verification (to unlock the premium version). - **What:** The entered license key is sent to SureCart for validation. - **When:** Only when you enter or remove a license key in the plugin settings. - **Data sent:** License key only — no student or course data. - **Purpose:** To enable premium features after purchase. - [SureCart Privacy Policy](https://surecart.com/privacy-policy/) == Frequently Asked Questions == = Does this plugin require another LMS like LearnDash or TutorLMS? = No. **Course Tracker is completely standalone** — it's not an add-on for any LMS platform. It uses your WordPress menu system and shortcodes to build your own lightweight learning platform directly inside WordPress. = How does Course Tracker use the WordPress menu builder? = Course Tracker connects to the **native WordPress Menu Builder** to create your course structure. Each menu item (lesson) becomes part of a visual course navigation panel. When a student marks a lesson as complete, a **checkmark** automatically appears next to that lesson. = Do I need to code or edit templates? = No coding is required. Course Tracker is **100% shortcode-driven**, so you can insert navigation, progress bars, and completion buttons anywhere. It works seamlessly with **Classic Editor, Gutenberg, Bricks Builder, Elementor**, and most other page builders. = Do I need to use all the shortcodes? Which ones are required? = You only need to use the **course navigation** shortcode (`[ctrkr_nav]`) and the **complete button** shortcode (`[ctrkr_complete_button]`) for the plugin to function effectively. However, we suggest adding all shortcodes to a test post to see what each one does and how they enhance your course layout. = Can I customize wording like “lessons” or “modules”? = Yes. Several shortcodes support customizable text attributes, allowing you to change wording such as “lessons,” “modules,” “sections,” or “steps” to better match your course structure. = Can I use this directly on a page or post? = Yes, you can. But we recommend creating a **course or lesson template** in your page builder so your shortcodes appear consistently across all lessons. Otherwise, you'll need to insert shortcodes manually on each page, which isn't ideal. For more about templates, please visit [rankbydesign.com](https://rankbydesign.com) and click **LMS** for video examples on building a course in Bricks Builder. More guides for other themes are coming soon, as Course Tracker works independently of any theme. = Can I style the buttons and navigation? = Yes! The plugin includes built-in styling controls to customize colors, spacing, active states, and checkmark styles. You can also fine-tune the look using the **WordPress Customizer or theme CSS**. Need help matching your site's design? Reach out anytime — we're happy to help. = Where is student progress stored? = All student progress is stored privately in your **own WordPress database** and never sent to any external service. Students can also export/import their own progress files if needed. = Does it work with my theme? = Yes! Course Tracker is designed to work with **any modern WordPress theme or page builder.** Because it uses shortcodes and menus instead of theme-specific templates, it adapts cleanly to your layout. = Is Course Tracker free? = Yes. You can track progress for up to **20 users** (including the admin) for free. For larger sites or unlimited users, you can upgrade with a small one-time fee, which helps support ongoing improvements and new features. == Screenshots == 1. Settings page. 2. Navigation setup. 3. Button styling. 4. Slide-in panel. 5. Student progress view. 6. Lesson example. 7. Course outline example. == Changelog == = 1.1.8 = * Added standalone `[ctrkr_progress_bar]` shortcode. * Added customizable text support for progress and lesson shortcodes. * Added custom HTML/shortcode content area below slide-in navigation. * Added additional navigation styling controls and active state settings. * Improved slide-in panel flexibility = 1.1.7 = * Improved look for course navigation. * New navigation styling settings added. * Fixed CSV export issue for student reports. * Tightened shortcode security and stability. = 1.1.6 = * Initial version released at WordPress Plugin Directory. * Improved button styling and settings UI. = 1.1.5 = * Refinements and new options added to the slide-in panel. = 1.1.4 = * Fixed remaining domain handling errors with PCP. = 1.1.3 = * Fixed domain handling and improved data sanitation. * No changes to plugin features or functionality. = 1.1.0 = * Plugin completely refactored for simplicity and security. * Always saves progress permanently to WP database, even in free mode. * Free mode supports up to 20 users; premium unlocks unlimited. * Added color picker and slide-in tracker panel. * Improved admin settings and license activation. = 1.0.0 = * Initial working version released at rankbydesign.com.