Step #1: Set Up Your User-Specific Content Page
Step #1.1: Make the Student Feedback page
In your WordPress backend:
- Go to Pages → Add New
- Name the page “Student Feedback”
- Press the Publish button
No content is needed for now.
Step #1.2: Add some “before and after” content for all users
Feel free to copy and paste the following to follow along:
Please see your feedback below!
USER-SPECIFIC CONTENT HERE
If you have any questions about any feedback, shoot an email to [email protected] and I’d be glad to discuss further!
Consider “USER-SPECIFIC CONTENT HERE” the placeholder for actual user-specific content.
Anything above it is the “before” content where you can introduce what this page is for.
Anything below it is the “after” content where you can invite students to follow up with questions.
Step #1.3: Set up THREE test user accounts
Set up test user accounts and note the WordPress User ID of each by hovering over the Edit link and checking the target URL in the browser status bar.
All test users should be in addition to your one WordPress admin user account.
Step #1.4: Set up your user-specific content
Use the LearnDash [student] shortcode to achieve this.
Important Note: The course_id parameter is always required with the [student] shortcode.
If the shortcode is placed within a course, it is automatically factored in and does not need to be explicitly defined. Since you’re placing this shortcode outside of a course (on a random page), you need to specify the course_id parameter.
Example setup for two users enrolled in Course ID 29790:
[student user_id="2" course_id="29790"]Wow, you are literally the worst student I've ever seen.
I hope you drop out soon because this is just a waste of time for everyone.[/student]
[student user_id="3" course_id="29790"]Wow, honestly you should be teaching this class because you are so great at this course.
I hope you drop out soon so you don't replace me one day as the #1 course instructor for this subject.[/student]
Step #1.5: Test the user-specific content
Use a plugin like User Switching to test, or reset/get passwords for each user and login with different browser sessions.
If configured correctly:
- User ID 2 sees their specific message
- User ID 3 sees their specific message
- Control and admin users see only the before/after content
Step #2: Set Up User-Specific Downloads
Step #2.1: Buy the Advanced Access Manager addon
The Advanced Access Manager addon costs $39 at the time of writing. Download Monitor offers a “freemium” business model with core functionality available free on WordPress.org.
Step #2.2: Install the Download Monitor plugin
Install the free Download Monitor plugin from WordPress.org, then install the paid Advanced Access Manager addon you purchased.
Step #2.3: Gather two files
Create one file for each non-control test user.
Pro Tip: Avoid naming files with enumerable patterns like file-for-user-id-2.txt and file-for-user-id-3.txt if not using user-specific protection, as bad actors could guess subsequent file names.
Step #2.4: Add your files to Download Monitor
Configure downloads in Download Monitor with the Advanced Access Manager. Specify a username for the “User” Access Group as per AAM documentation.
This generates a URL like http://learndash.local/download/29836/ that requires specific user login before file access.
Step #2.5: Ensure files can only be accessed by the right people
Test that:
- The Download Monitor-generated link can only be accessed by the intended user
- Direct access to the file is blocked in an incognito window
Direct access protection works automatically for Apache/.htaccess servers but requires configuration for Nginx. Contact your web hosting support if needed.
Step #2.6: Circle back to your user-specific content
Add the download link to your user-specific content:
[student user_id="2"]Wow, you are literally the worst student I've ever seen.
I hope you drop out soon because this is just a waste of time for everyone.
Oh, here's a <a href="http://learndash.local/download/29836/">user-specific download link</a> just for you.[/student]