Tutor
Certificate Search
Certificate verification and lookup for Tutor LMS โ an admin search tool, a public-facing verification shortcode, and per-user certificate listings on WordPress admin profiles.
Overview
Tutor Certificate Search adds certificate verification and lookup capabilities to Tutor LMS. It provides three integrated tools covering every scenario โ from a quick admin lookup to a public verification form that anyone can use to confirm a certificate is genuine.
The plugin reads directly from Tutor LMS’s existing data โ no additional database tables are created. All certificate lookups query the WordPress comments table, where Tutor LMS stores course completion records, using the 16-character verification ID as the search key.
Admin Certificate Search
Look up any certificate by its verification ID and instantly see the student’s name, email, course, completion date, and instructor.
Admins onlyFrontend Verification Shortcode
Embed a verification form on any page. Visitors enter a verification ID to confirm authenticity and open the certificate โ no login required.
Public ยท Any visitorUser Profile Certificates
Automatically adds a certificates section to every WordPress admin user profile listing all earned certificates with their IDs and View buttons.
Admin profile pagesPrivacy by design. The public verification shortcode returns only a success or failure โ it never exposes any personal student data to visitors. Opening the actual certificate is handled by Tutor LMS’s own certificate page.
Requirements
| Requirement | Details |
|---|---|
| WordPress | 5.0 or higher |
| PHP | 7.4 or higher |
| Tutor LMS | Any current version (Free or Pro) โ course completion with certificate generation must be in use |
| User role | Administrator access required for the admin search page and user profile features |
If Tutor LMS is not installed and activated when the plugin is activated, WordPress will deactivate the plugin immediately and show an error message. The plugin requires Tutor LMS to be active to function.
Installation
Upload and activate
- Log in to your WordPress admin dashboard
- Navigate to Plugins โ Add New โ Upload Plugin
- Select the plugin ZIP file, click Install Now, then Activate Plugin
Activate your license
After activation, navigate to the License Management page. Its location depends on whether the Ksajie hub is installed:
- If the Ksajie hub is present: Ksajie โ TCS License
- If no Ksajie hub is present: Settings โ TCS License
Enter your license key and click Activate License. None of the plugin’s features will be available until a valid license is active.
Verify installation
After activating the license, navigate to the Certificate Search admin page and perform a test search using a known verification ID from a completed course. If results appear correctly, the plugin is working. Also place the [tutor_certificate_verify] shortcode on a test page and verify the form renders and responds correctly.
Admin Certificate Search
Navigate to Ksajie โ Certificate Search (or the top-level Certificate Search menu item if the Ksajie hub is not installed). This page is accessible only to administrators.
Performing a search
- Type or paste the 16-character certificate verification ID into the input field
- Press Enter or click Search
- Client-side validation checks the input is not empty and is exactly 16 characters โ an alert is shown if either check fails
- A spinner appears while the request is processing; results display in-page without a page reload
What the results show
A successful search returns a two-column result card:
Student Information
Certificate & Course
Shortcode info panel
Below the search area, a blue information box reminds you of the [tutor_certificate_verify] shortcode and notes that it can be placed on any page, post, or Elementor widget to give visitors a public-facing verification form.
Frontend Verification Shortcode
Place this shortcode on any page to give visitors โ including guests who are not logged in โ a simple form to confirm a certificate’s authenticity.
Shortcode attributes
| Attribute | Default | Description |
|---|---|---|
| button_text | Verify Certificate | Label for the submit button |
| placeholder | Enter certificate verification ID | Placeholder text inside the input field |
| label | Enter certificate verification ID | Label displayed above the input field |
Example with custom attributes: [tutor_certificate_verify button_text="Check Certificate" label="Certificate ID"]
How verification works
- Visitor enters the 16-character verification ID and clicks the button (or presses Enter)
- Client-side validation confirms the ID is exactly 16 characters before sending the request
- An AJAX request is sent to the server โ works for both logged-in and non-logged-in visitors
- The server searches the database using the same logic as the admin search tool
- If found: a green confirmation message appears and the certificate opens in a new tab at the Tutor LMS certificate URL
- If not found: a red error message is shown; no certificate is opened
The verification endpoint returns only a success or failure โ no personal student data is sent to the browser. The certificate itself is opened via Tutor LMS’s own certificate page, which may display the student’s name as part of the certificate image.
User Profile Certificates
A Tutor LMS Certificates section is automatically added to the bottom of any WordPress admin user profile page โ both when a user views their own profile (Users โ Your Profile) and when an admin edits another user’s profile (Users โ All Users โ Edit).
What is displayed
The section only appears if the user has at least one Tutor LMS certificate โ no empty heading is shown for users without certificates. When certificates are present, a two-column grid is shown:
- Left column: each certificate shown as a card with the 16-character verification ID in a monospace code element, the course name, and the completion date
- Right column: a View Certificate button for each certificate that opens it in a new tab, alongside the course name and completion date
A summary line below the grid shows the total count โ for example, “3 certificates earned.” The layout collapses to a single column on screens narrower than 768px.
Access control
The certificates section requires either edit_users or manage_options capability to view. The View Certificate button AJAX handler applies the same capability check server-side before resolving the certificate URL and returning it to the browser.
Frequently Asked Questions
wp_comments table for all records matching the search criteria โ there is no dependency on when the plugin was installed. All historical completion records with valid 16-character verification IDs will be found and displayed.wp_comments table with comment_type = 'course_completed' and the verification ID stored in comment_content. (3) Check the license is active โ the AJAX handler blocks all requests when no valid license is present. (4) Some older Tutor LMS versions or custom configurations may store completion data differently โ inspect the comments table directly using phpMyAdmin.tutor_certificate_page option from Tutor LMS settings to build the certificate URL. If this option is not set, the URL falls back to {home_url}/tutor-certificate. Verify that the certificate page is published and correctly configured in Tutor LMS settings. If the page exists but the URL is wrong, update the certificate page setting in Tutor LMS.wp_comments have comment_type = 'course_completed', a non-empty comment_content, and the content is exactly 16 characters long.Troubleshooting
- Verify the ID is exactly 16 characters โ copy-paste it to rule out invisible characters or spaces
- Confirm the license is active on the License Management page โ the AJAX handler is completely blocked without a valid license
- Inspect
wp_commentsdirectly in phpMyAdmin โ look for a row withcomment_type = 'course_completed'and the verification ID incomment_content - Check the browser Network tab for the AJAX response โ any PHP error will appear there as a non-JSON response
This is almost always a caching issue:
- Check the browser console for a “Certificate verify frontend scripts not loaded” error โ this means the page is being served from cache without the required JavaScript localization data
- Configure your caching plugin to bypass or purge the cache on the shortcode page, or add the page to the cache exclusion list
- Confirm the page’s content actually contains
[tutor_certificate_verify]โ the plugin only enqueues its scripts on pages where the shortcode is detected
- The section is hidden entirely when a user has no certificates โ confirm the user has at least one completed course with a generated certificate in Tutor LMS
- Inspect
wp_commentsdirectly for this user’s completion records to confirm they havecomment_type = 'course_completed'and a 16-charactercomment_content - Confirm the logged-in admin has
edit_usersormanage_optionscapability โ the section requires these to display
The certificate URL is built using Tutor LMS’s stored certificate page setting. If no page is set, the plugin falls back to {home_url}/tutor-certificate. To fix:
- In Tutor LMS settings, confirm the certificate page is published and correctly assigned
- If you recently changed the permalink structure, flush WordPress rewrite rules by visiting Settings โ Permalinks and clicking Save
Support
Need help? Visit the support portal
If you’re experiencing an issue not covered in this documentation or the troubleshooting section, submit a support request through the portal. Please include the details below to help resolve your issue as quickly as possible.
Open Support Portal โ