This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

Front End PM


Front End PM is a Private Messaging system to your WordPress site.This is full functioning messaging system from front end. The messaging is done entirely through the front-end of your site rather than the Dashboard. This is very helpful if you want to keep your users out of the Dashboard area.

Some Front End PM PRO Features

  • Multiple Recipients
  • Only admin
  • Group message
  • Email Piping
  • Read Receipt
  • Email template
  • Announcement Email queue
  • Role to Role Block

View Details

Some Useful Link


  • Works through a Page rather than the dashboard. This is very helpful if you want to keep your users out of the Dashboard area!
  • Users can privately message one another
  • Threaded messages/Individual message
  • Ability to embed things into messages like YouTube, Photobucket, Flickr, WordPress TV, more.
  • Notification sound.
  • Desktop notification.
  • Admins can send a public announcement for all users to see or to perticular role(s).
  • Admins can set the max amount of messages a user can keep in his/her box per role basis. This is helpful for keeping Database sizes down.
  • Admins can set how many messages to show per page in the message box.
  • Admins can set how many user to show per page in front end directory.
  • Admins can set will email be sent to all users when a new announcement is published or not.
  • Admins can set “to” field of announcement email.
  • Admins can set Directory will be shown to all or not.
  • Admins can block any user to send private message.
  • Admins can set time delay between two messages send by a user.
  • Admins can see all other’s private message.
  • Admins can block all users to send new message but they can send reply of their messages.
  • Admins can hide autosuggestion for users.
  • There are three types of sidebar widget.
  • Users can select whether or not they want to receive messages
  • Users can select whether or not they want to be notified by email when they receive a new message.
  • Users can select whether or not they want to be notified by email when a new announcement is published.
  • Users can block other users.




  • Responsive
  • Messagebox.
  • Unread message count in website title
  • Front End Directory.
  • Admin settings page.
  • Messagebox settings.
  • Security settings.
  • Appearance settings.


  1. Upload “front-end-pm” to the “/wp-content/plugins/” directory.
  2. Activate the plugin through the “Plugins” menu in WordPress.
  3. Create a new page.
  4. Paste code [front-end-pm] for Front End pm under the HTML tab of the page editor.
  5. Publish the page add select this page as “Front End PM Page” in settings page of this plugin.

Need more instruction? you can visit Front End PM and contact with me for paid support.


How to update?

Please full backup first before update so that if anything goes wrong you can recover easily.

Can i use this plugin to my language?

Yes. this plugin is translate ready. But If your language is not available you can make one. If you want to help us to translate this plugin to your language you are welcome. please use wordpress translation.

Where to contact for paid support?

You can visit Front End PM and contact with me for paid support.


July 5, 2024
This plugin is great and I congratulate the creatorThe case that I observed that feels empty is about creating the default incoming message numberFor example, for every message that is created and sent, a number should be inserted next to the time and date of sending so that the message can be viewed later.
June 3, 2024
This plugin works great and is very useful. Highly recommended for member communications. Please keep it updated. I’d like to go for premium
November 30, 2023
I think it is a magnificent plugin that has managed to solve what most messaging plugins have not and that is user interactivity.But I give it 4 points because there is one aspect that I don’t like. When choosing a user as the recipient, the name cannot be found.It would have been better to search the database by email, or better by name and email and not give us a choice from a list of users.If you have a list of 2000 users the system breaks down.
September 15, 2023
very happy with this plugin, helping me to set private message system for my forum user in the website. much better if there’s a specific function to deny access to admin (me) reading a message between user. i mean, i don’t mind if user discuss something private between them, that i couldn’t access / read. Not really a problem. So it is much better, to retain transperancy and honesty between admin and user, just in case user ask ‘do you read my message that i send to another user?’. 🙂 great plugin anyway. really fit in my web system.
June 18, 2023
The presentation leaves a lot to be desired. The messages are hard to pick out between the names. Some other designs would be nice, maybe emulate other chat-type interfaces.
Read all 212 reviews

Contributors & Developers

“Front End PM” is open source software. The following people have contributed to this plugin.


“Front End PM” has been translated into 16 locales. Thank you to the translators for their contributions.

Translate “Front End PM” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • Important update
  • Tested up to updated


  • Tested up to updated


  • Added missing files


  • Tested up to updated


  • PHP version updated
  • Code improved


  • Security update
  • Fix: strip tags for avatar name.


  • Tested upto updated.
  • Classes added in Header divs.
  • Filter added to send email to sender.
  • Fix: name issue for html tags.


  • Tested upto updated.
  • Classes added in Header divs.
  • shortcode message form now support REQUEST value
  • Fix: after settings saved previous values were shown.
  • Fix: some minor bugs.


  • Tested upto updated.
  • Header string inproved.
  • Fix some minor bugs.


  • Tested upto updated.
  • Respect filter when message delete from DB.
  • Fix some minor bugs.


  • Load Messagebox and announcements pagination using ajax
  • reset form after message sent.
  • message query class modified. Now we can check if more rows are there from query.
  • remove SQL_CALC_FOUND_ROWS by default which was slow for large number of messages.
  • Database index modified. Highly performance improved for large number of messages.


  • remove backward compatible key of post_, use mgs_ for fep_send_message and fep_add_announcement
  • show ajax response above submit button
  • show processing text when form submit reach 100%
  • set delay to reload replies when submit form
  • improve notification call. use rest api and localStorage
  • Improve attachment script
  • new rest route added to get users
  • new tokeninput script added
  • autosuggestion/user block script improved. Now use rest api
  • New filter fep_filter_delete_from_db added
  • 3 new actions added when transition status
  • ability to pass per_page value for admin pages page
  • fep_action_info_output and fep_posted_action_after hook added
  • delete message meta when message deleted
  • use fep_get_statuses instead of hard coding statuses
  • fep_filter_message_toggle_feature added to remove toggle completely
  • now {current-post-title} can be used with other text for shortcode subject


  • All form now submit via ajax
  • Show progress bar when submitting form
  • Fix: Compatibility with Memcached


  • Show users in directory and suggestion only who has access to message system
  • Option added so that user can reply to messages deleted by other user
  • Add html field type in admin settings


  • Message can be queried by multiple recipients
  • Whitelisted user can view all messages and announcements
  • fep_filter_announcement_participant_ids added
  • add filter to add !important to inline css


  • Use fep_query_url for messages url
  • Pass attachment data to fep_filter_attachment_download_link filter
  • Pass where parameter to fep_form_fields filter
  • Whitelisted users can send reply if they are blocked by user also


  • User can navigate to other messages from a view message page
  • Block user now show confirmation dialog
  • Drop previous version table if exists
  • Message to loading gif target more accurately in css
  • FIX: is_settings_page was wrong as first param was not set


  • Menu collapse when using mobile device.
  • Message/Announcement date font size decrease.
  • FIX: Attachment could not be deleted when Message/Announcement edit.
  • FIX: Some CSS was not applied for screen width less then 480px
  • FIX: Time delay check was not applied when message sent using shortcode form.


  • Admin can edit Messages and Announcements.
  • mgs_id can be passed when insert message.
  • fep_filter_message_query_sql added
  • message query orderby can be empty to remove orderby.
  • we can now get only count from FEP_Message_Query
  • FIX: if first_last_name or last_first_name used for name then empty name also returned true.
  • FIX: Memory leaks


  • Breaking changes, If you have custom code or template changes for this plugin, make sure they are compatible with current version.
  • highly performance improved
  • use own database table instead of CPT
  • build in caching mechanism
  • Some template changes
  • no more WP_Post object inside template. Now FEP_Message object
  • privacy tab added in settings page.

To view any previous version changelog see