Skip to main content

Tutor LMS

REQUIREMENTS

To install the plugin ensure that your website running:

  • WordPress 5.9 or newer
  • PHP 7.1 or newer

Installation

How to install Tutor LMS

Download Tutor LMS from the WordPress plugin directory and install it through the standard WordPress installation process.

How to install Better Messages with Tutor LMS

  1. Install Better Messages through the WordPress plugins screen, or upload the plugin files to /wp-content/plugins/bp-better-messages.
  2. Activate the plugin through the Plugins screen.
  3. Go to Better Messages → Settings → Integrations → LMS to enable the integrations you want.

Tutor LMS integration settings

Supported features

Message Instructor button on course page

Adds a Message Instructor button to every Tutor LMS course page. Students can open a private conversation with the course instructor with a single click.

Message Instructor button on the course page

The button is styled to match the native Tutor LMS course buttons and is hidden for the instructor on their own course.

Enable in Better Messages → Settings → Integrations → LMS → Tutor LMS Integration → Message Instructor Button.

Send Message button on instructor profile

Adds a Send Message button to the Tutor LMS public instructor profile (/profile/<username>/?view=instructor) so visitors can reach the instructor directly from their profile.

Send Message button on the instructor profile page

Enable in Better Messages → Settings → Integrations → LMS → Tutor LMS Integration → Send Message Button on Instructor Profile.

Send Message button on student profile

Adds a Send Message button to the Tutor LMS public student profile (/profile/<username>/?view=student) so other learners can reach the student from their public profile page.

Send Message button on the student profile page

Enable in Better Messages → Settings → Integrations → LMS → Tutor LMS Integration → Send Message Button on Student Profile.

Course Group Chat

When a course is opened, Better Messages automatically creates a group conversation that the instructor — including any co-instructors — and every enrolled student can join. Students are added on enrollment and removed when their enrollment ends or is cancelled.

The conversation header shows the course thumbnail, title, and instructor name, so students always know which course the discussion belongs to.

Course group thread with the course info card

Enable in Better Messages → Settings → Integrations → LMS → Tutor LMS Integration → Course Group Chat.

The course info card pictured above is rendered automatically above the conversation. It also appears on private DMs opened through the Message Instructor button so the recipient knows which course you are asking about. To hide it on every LMS course conversation, turn off Better Messages → Settings → Integrations → LMS → Shared Course Settings → Course Info Card.

Courses widget

Once Course Group Chat is enabled, the user's enrolled courses surface in the dedicated Courses widget on the Mini Widgets bar, Side Panel, and Mobile bar — separate from the social Groups widget so academic chats and friend cohorts don't mix in one list.

Courses widget on a Tutor LMS site showing the student&#39;s enrolled courses

Configure the icon, role restrictions and "Hide Tab When Empty" behaviour under Better Messages → Settings → Mini Widgets → Courses.

Shared course settings

Three toggles under Better Messages → Settings → Integrations → LMS → Shared Course Settings apply to every LMS course conversation across LearnDash, LearnPress, Tutor LMS, MasterStudy LMS and FluentCommunity Courses:

  • Course Info Card (on by default) — show the title, image and instructor name banner above each course conversation, including the private DM opened by Message Instructor. Turn off to hide the banner everywhere.
  • Email Notifications (on by default) — send the standard "new message" email to participants when activity happens in a course chat. Turn off if your students do not rely on email or you want to reduce traffic.
  • Push Notifications (off by default) — send browser and mobile push notifications for new course messages. Requires a WebSocket license.

Changing any of these toggles propagates across all four LMS integrations.

Messages Dashboard Tab

Adds a Messages tab to the Tutor LMS dashboard for both students and instructors (/dashboard/messages/). The tab embeds the full Better Messages inbox so users can read and reply to conversations without leaving the dashboard.

Messages tab inside the Tutor LMS dashboard

Enable in Better Messages → Settings → Integrations → LMS → Tutor LMS Integration → Messages Dashboard Tab.

Use the Tutor LMS dashboard as the primary messages location

Open Better Messages → Settings → General → Messages Location and choose Show in Tutor LMS Dashboard to redirect every internal Messages link (notifications, the All messages link in mini-chats, etc.) to the Tutor LMS dashboard Messages tab.

Messages Location dropdown set to Show in Tutor LMS Dashboard

When this option is selected, the Messages Dashboard Tab toggle is enabled and locked automatically — without it the redirect would have no destination.

Messages Dashboard Tab locked on when Messages Location uses the dashboard

Shortcodes for custom placement

If the auto-injected buttons don't land where you want them (custom layout, sidebar widget, page builder, etc.), drop the matching shortcode wherever you need.

info

Disable the corresponding toggle (Message Instructor Button / Send Message Button on Instructor Profile / Send Message Button on Student Profile) before placing the shortcode, otherwise the button will be rendered twice — once auto-injected and once by the shortcode.

[better_messages_tutorlms_course_button]

Renders the Message Instructor button for a Tutor LMS course. Falls back to the current course post when no course_id is supplied.

AttributeDefaultNotes
course_idcurrent postOverride the course the button targets
user_idcourse authorOverride the message recipient (instructor)
classTutor LMS button classesOverride CSS classes
textMessage InstructorOverride the button label
[better_messages_tutorlms_course_button]
[better_messages_tutorlms_course_button course_id="123"]
[better_messages_tutorlms_course_button text="Ask the instructor"]

[better_messages_tutorlms_instructor_button]

Renders the Send Message button on a Tutor LMS instructor public profile. Resolves the instructor from the tutor_profile_username query var by default.

AttributeDefaultNotes
user_idprofile ownerOverride the message recipient
classTutor LMS button classesOverride CSS classes
textSend MessageOverride the button label
[better_messages_tutorlms_instructor_button]
[better_messages_tutorlms_instructor_button user_id="42"]

[better_messages_tutorlms_student_button]

Renders the Send Message button on a Tutor LMS student public profile. Resolves the student from the tutor_profile_username query var by default.

AttributeDefaultNotes
user_idprofile ownerOverride the message recipient
classTutor LMS button classesOverride CSS classes
textSend MessageOverride the button label
[better_messages_tutorlms_student_button]
[better_messages_tutorlms_student_button user_id="42"]