Skip to:

Private Messaging Extended

  • Detective



    For my own purposes i modified the plugin Private Messagging. The changes i made are:

    – The message’s content is filtered through the same filters as a regular post content.

    – The plugin is localized.

    – Added security fixes.

    – Added limits (the plugin now checks message lengths and inbox size).

    – Added improved error handling (i still have to use Wp_Error).

    – Improved usability :)

    Maybe it could be useful, so if anyone wants to check it out (or even use it) it can be downloaded here (remember to change the extension to .tar.gz).

Viewing 25 replies - 1 through 25 (of 27 total)

  • citizenkeith


    Thanks for this! Any recommendations for upgrading from the original Private Message plugin?

    Thanks for the upgrade! When I’d previously tried the PM plugin, it continually gave me errors. But this seems to have fixed them all! My forum members will be so happy.




    Honestly, i don’t know. Maybe it’s best to do a clean install.


    I hope it works ok. I made some basic tests, but i don’t know how it works in a real environment.


    I’ve been testing it quite a bit today, and I have found one small bug…

    I’ll try to explain this as clearly as possible. Basically, when Member A sends a PM to Member B, then Member B replies, the plugin tries to send the message to Member B, not Member A like it should.


    I just overwrote all of the old files. Works fine on my latest-version bbPress install.



    Thanks for the feedback. Here is the new version.

    I still have a lot of improvements left, but i think it is usable now. Please remember to update the files in your root/template folder.

    Great! It works properly now. Thanks for upgrading a very useful plugin. :-)



    I get this error at the top of the pm.php page:

    bbPress database error: [Unknown column 'del_receiver' in 'where clause']
    SELECT * FROM bb_privatemessages WHERE id_receiver = '1' AND del_receiver= '0' ORDER BY created_on DESC

    bbPress database error: [Unknown column 'del_sender' in 'where clause']
    SELECT * FROM bb_privatemessages WHERE id_sender = '1' AND del_sender = '0' ORDER BY created_on DESC

    Also, all previous Private Messages are missing.



    Uhm, maybe you where using a older version of Private Messaging? Because i didn’t mess with the database.

    Anyway, as i said, i think it’s best to do a clean installation. If you are already using the previous plugin and don’t want to lose the current messages, perhaps it’s best to keep it.



    Thanks Detective. Obviously I’m not skilled in PHP.

    The original PM plugin is in desperate need of an update, IMHO, and I was hoping this would be it. However, I didn’t consider that it would even change the database. I guess I’ll stick with the old version for now, but would love for somebody (since I am not a programmer) to come up with some sort of PM import. :-)

    Also, I was using the latest version of Joshua’s PM plugin (v0.80)



    Please add these two fields to your table bb_privatemessages:

    'del_receiver' tinyint(4) NOT NULL default '0'
    'del_sender' tinyint(4) NOT NULL default '0'

    I forgot to put those two on the install function. Now it should work :)



    I uploaded a new version, fixing the previous bug and a critical error in the sql query por inserting a new message (it was swapping message content and message title). It’s here.



    Hello Detective:

    Quiero usar este plugin en español. tengo la traducción que viene con el, pero no se donde definir el idioma ni donde debe ir este archivo. gracias


    Debes configurar el idioma de bbPress como “es_ES” y automáticamente el plugin debiese utilizar el lenguaje que incluyo. Si no es así no sabría decirte el por qué de la falla.


    The installation file contains:


    What does this prefix. do? Or where does it stand for? Is prefix the bb_ in the database? I believe not since $bbdb doest this already, so what is it?


    $bbdb->prefix is a string containing your installation db prefix.

    So why not use:

    $bbdb->privatemessages or doesn’t this work anymore?

    Because that tries to get the instance variable ‘privatemessages’ from $bbdb. As that variable doesn’t exists, it returns null.

    Ok (just asking this cause i am working on a plugin myself), but how about the next step. I have this to create a table if it doens’t excist:

    bb_register_activation_hook(__FILE__, 'bbmenu_install_check');

    function bbmenu_install_check() {
    global $bbdb;

    $installed = $bbdb->get_results("show tables like ".$bbdb->prefix."bbmenu");

    if ( !$installed ) :
    $bbdb->query(" CREATE TABLE IF NOT EXISTS <code>&quot;.$bbdb->prefix.&quot;bbmenu</code> (
    <code>item_id</code> INT(3) NOT NULL AUTO_INCREMENT,
    <code>item</code> varchar(50) NOT NULL default '',
    <code>set</code> varchar(50) NOT NULL default '',
    <code>page</code> varchar(50) NOT NULL default '',
    <code>location</code> varchar(50) NOT NULL default '',
    <code>order</code> int(9) NOT NULL default '0',
    PRIMARY KEY (<code>item_id</code>)

    But I also want to put some data in it:

    "INSERT INTO$bbdb->menu` VALUES

    (DEFAULT, ‘Forums’, ‘active’, ‘index.php’, ‘front-page’, 0),

    (DEFAULT, ‘Search’, ‘active’, ‘search.php’, ‘search-page’, 1),

    (DEFAULT, ‘Statistics’, ‘inactive’, ‘statistics.php’, ‘stats-page’, 0);”;`

    How to do this in the same query?

    I don’t know how to do it on the same, but you could easily make a $bbdb->query call with your own query.



    Where can I download the latest version?

    Is this plugin still available? Anyone got a copy of it?

    Or I’d better use the old one…

    My concern is forward compatibility because bbPress 1.0 will soon be around and hopefully PM functionality will be in core someday.

    Did you mean this one?

    The original is still in


    Yes =) That’s what I’ve been looking for but the link in the plugins section was broken.

    I ended up using a modified version of the old PM plugin but I think I can adopt some features from that one too.

    Thank you :)

    For what it’s worth (and probably a little off-topic) but my newly released “User Directory” plugin integrates with the “Private Messaging” plugin, assuming that it is active in a given user’s forum. While it’s not an enhancement per-se, it does raise the status of your changes a little and hopefully drive downloads of both plugins.



    Hello, my name is Ram.

    I installed the Detective’s Modified Private Messaging for Personal Messaging feature in my bbpress installation. Everything works fine on my local (XAMPP on Windows XP) computer. But, when installed the same on a live bluehost server, I get the following message when I access the pm.php file:

    Fatal error: Call to undefined function pm_delete() in pm.php on line 10

    Everything works fine, except the Personal Messaging system.

    Can anyone please help me in resolving this issue?

    Thanks in advance.


Viewing 25 replies - 1 through 25 (of 27 total)
  • You must be logged in to reply to this topic.
Skip to toolbar