If you’re here, you were most likely invited by me to help out with testing my Private Notes plugin for WordPress. Stated simply, Private Notes provides registered users on a site with the ability to send messages to one another.
Features of Private Notes
- Users can send and receive notes.
- When sending, user can save a copy of the sent note to a ‘Sent notes’ folder.
- Notes can be forwarded, saved, replied to, and deleted.
- Users can create their own folders for saving notes, and move notes between folders.
- User folders can be renamed and deleted.
- Configuration-limited HTML can be used in notes.
- Note admins can see user folders and their contents (including note subjects), but cannot read notes.
- Note admins can delete notes and folders of users with notes.
- Plugin will automatically delete notes after an admin-determined length of time.
Configurable parameters by note admins
- Max # of save folders per user.
- Max # saved notes per user.
- Max notes that can be kept in a user’s inbox.
- Max # of days a note can be saved.
- User level for sending and receiving notes.
- User level for administering the notes plugin. This option is only changeable by the site admin.
- Starting and ending HTML tags for system and error messages, to customize their appearance.
- HTML allowed tags in notes.
Screenshots - click picture for large version

Sending a note to a user

User’s view of a folder

User’s view of a note. Someone forgot to close a <b> tag.

Admin main screen

Admin view of a user’s folders / contents
Notes:
- To test sending and receiving notes here, you need to register on this site. I will not share, sell, or otherwise let anyone know your email address.
- I’ve set the admin level for the test install to 1. If you’d like me to promote you you so can mess around with the config, just send me a note (user ‘admin’, or email me at {freds}(dot){plugins}(at){gmail.com} without the braces) and ask to be bumped up. Please be nice and don’t mess around with the message tag settings, but feel free to play with setting user limits all you want, as well as deleting notes and folders.
- This software is currently a beta version, but if you’d like to install it on your own WordPress (it was written under version 1.5.2), you can download it from here. Untar the file and move the private_notes folder to your plugins area. Activate the plugin, then go to “Manage–>Private notes” on your admin panel to create the tables and config options. Again, please remember this is beta software. It works for me, and it should work for you, but no one’s perfect. When I feel it’s ready for general release, I’ll release it to wp-plugins.net.
- If you install the software, there are a couple of functions for you to know about:
- To make the “X unread notes (go)” that you see (if you’re registered) in the left sidebar (it shows how many unread notes you have, and gives a link to your folders page), use the pn_private_notes() function. The syntax is pn_private_notes(message,tag);, where message is the string you want displayed for the number of unread messages, and tag is the text you want to use as the text for the link to take a user to their notes page. You can use a ‘#’ in the message field in the place you want the number of unread notes to show, and a ‘@’ where you want the link (and the tag) to display. As an example, I have this in my sidebar template: pn_private_notes(’# unread notes (@)’,'go’);
- To make the ‘(send note)’ tag you see after registered users’ names in the comments below, use the pn_send_note_url() function in your comments template. The syntax is pn_send_note_url(message,comment_id);, and the function returns an HTML anchor string. message is the string you want to display with the link to sent a note, and comment_id is the ID of the current comment (so the function can get the ID of the user who posted it). My usage in my comments template (in the loop to show comments) is: <?php echo pn_send_note_url(’(send note)’,$comment->comment_ID); ?>
- I’m a new WordPress user, and don’t yet know all the terminology for its parts. Please overlook any gross misnames I did.
- This plugin is my first real attempt at playing with PHP and mySQL. I write C and Oracle code daily for a living, so the transition wasn’t too tough. However, it’s entirely likely that I did something stupid in the code, or made something harder than it needed to be, just out of a lack of PHP / mySQL knowledge. If you see anything that can be made better, or find any bugs, please email me, drop me a note (user ‘admin’), or leave a comment here. Thanks.
- I’m always open to suggestions for new features, or to answer questions. Leave a comment, drop me a note (user ‘admin’), or email me at {fred}(dot){anderson}(at){gmail.com} (without the braces)