RSVPMaker 1.0 Released (Make that 1.1)

Update: After a couple of small bug fixes, RSVPMaker is actually at 1.1 already.

I finally worked up the nerve to call RSVPMaker a version 1.0 quality product. The latest release includes a number of things people have been asking for, as well as a few things that are considered best practices, such as providing an uninstall script to remove custom tables and plugin-specific database entries.

Here’s the rundown:

1.0

  • Added a basic_form function that you can override to change the basic fields of the RSVP form. For example, you can change it to omit the section that asks for the names of guests. This is in addition to the rsvp_profile function, which is used to collect additional contact details such as phone # or mailing address. See the instructions for adding custom functions.
  • You have the option of allowing the names of attendees and the contents of the notes field to be displayed publicly. To avoid encouraging spam entries, this content is loaded via AJAX and only when the user clicks the Show Attendees button
  • Moved most of the default formatting into a CSS file that is queued up on pages that show event content. There is in option on the settings page for specifying your own css file to use instead. Most inline styles have been replaced by class selectors. However, the styling of the RSVP Now button is still set on the RSVPMaker settings screen. Works better for email distribution of events.
  • RSVP Report now lists timestamp on reply and lets you sort by either alphabetical order or most recent.
  • If you’re signing up employees or workers for specific timeslots, you can now set that to half-hour increments
  • Tweaked redirection code to handle confirmation and error messages on sites that don’t have permalinks enabled
  • Changed label for RSVPMaker widget as it shows up on the administrator’s screen under Appearance.
  • Added an uninstall script for removing custom tables and database entries.

Troubleshooting RSVPMaker

I’m happy to hear that RSVPMaker is working well for some people, but I also get a few reports from people who are having problems. Here are some guidelines for resolving any issues you may encounter.

One known (but not completely understood) issue is that some WordPress users report getting “page not found” messages when trying to view an RSVPMaker event or click on the RSVP button. This appears to be a problem with either specific WordPress configurations (multisite?) or interference with other plugins that also manipulate the permalinks setup.

If you run into this issue, there is now a “Tweak Permalinks” checkbox you can click on the options / settings page for RSVPMaker. This should clear up the issue (by making WordPress refresh the permalinks more frequently), but let me know if it does not.

I’ve also added a “Debug” mode checkbox on the settings page. You should only turn this on if you’re having trouble.  It adds a “Debug” screen to the RSVP Events menu where you can check system variables or share them with me, relaying them to me by email.

I hope very few people will have to visit this page, but at least if you are having some sort of trouble it gives me a better chance of figuring out why it is occurring.

Debug screen, showing a readout of RSVP responses

Mystery Glitch with RSVP Reports

A couple of people who have tried RSVPMaker have reported problems with the RSVP Reports page not working properly. They get just a headline with no results listed, and I’m trying to figure out why. Please contact me if you experience this issue, so I can try to track down the cause. Continue reading “Mystery Glitch with RSVP Reports”

RSVPMaker 0.8 Released

Here are a few improvements early users of RSVPMaker have been asking for:

Version 0.8

  • Added type parameter for shortcode so you can display only events tagged with “featured” or another event type using [rsvpmaker_upcoming type=”featured”] (see the featured events on the home page of this site)
  • Added ability to set RSVP start date as well as deadline for RSVPs
  • If signing up workers or volunteers for specific timeslots, you can now specify the duration of the timeslots in one-hour increments
  • Cleaned up “Event Dates, RSVP Options” box in editor, moving less commonly used parameters to the bottom.
  • Added a Tweak Permalinks setting (a hack for a few users who have reported “page not found” errors, possibly because some other plugin is overwriting the RSVPmaker url rewrite rules).
  • Tested with WP 3.1 release candidate

Download from http://wordpress.org/extend/plugins/rsvpmaker/

Shortcodes used on home page for event headlines, featured events

To-Do List for Improvements

These are mostly things I got as requests from other people who have tried RSVPMaker and are looking for some extra features. Let me know if these are on your list, or if you see other areas for improvement, so I will know what to prioritize.

  • Ability to set both a start date and a deadline for accepting RSVPs. Currently, I only provide a start date.
  • When soliciting signups for specific timeslots (for example, volunteers at an event), allow variable lengths for the timeslots (currently fixed at one hour).
  • For multi-day events with RSVPs, the option of letting people sign up for one or more days but not necessarily all. So for a 3-day event, we might provide checkbox for those who only want to sign up for two days out of three.
  • Some system for approving RSVPs, where there is some criteria for acceptance. I got this request a few weeks ago but am unsure how it should work, so not giving it a high priority.
  • A way to specify different RSVP forms for different event types. Might offer this as a set of cookbook guidelines for people who want to do special customizations, rather than as a core part of the plugin.

The trick with addressing some of these requests will be doing so without cluttering things up too much for those whose needs are more basic.

I’m planning to move some of the more complicated options that only apply in special cases to a separate section of the control panel for setting RSVP parameters.

The event type category I provide isn’t really being used for anything now. I’m thinking that the shortcodes for displaying listings should have a way of designating that you only want to list the events in the featured category or some other category.

Also want to revise the recurring event editor to let you specify how far ahead you want to project the dates for the events you are setting up.

How to Add Events with RSVPMaker

This is a brief illustrated tutorial on the RSVPMaker event editor and the primary options it provides.

Here’s how you set up a basic event, with just a headline, event description and date and time set.

A basic event - headline, description, date and time

And here’s what it gets you:

A basic event

Here, we’re specifying both a start time and a duration, so that the system will display both a start time and an end time.

Setting the duration
Event showing end time

You can also set up a multi-day event with a common headline and description for a weekend camping trip or week-long conference.

Setting up a multi-day event. Setting it to hide the display of the time for these all-day events.
Multi-day event

If you want to collect RSVPs, you need to check the Collect RSVPs checkbox and specify an email address for whoever needs to receive notifications when someone completes the form. You can also view a report of everyone who has RSVP’ed.

There are also options you can use to:

  • Set a deadline for RSVPs (leave this blank otherwise)
  • Set a maximum number of participants (leave it at zero for no limit)
  • Prompt users to sign up for one-hour timeslots, an option intended for use staffing volunteer events. A future release may allow you to set the time interval for the volunteer timeslots, but right now it’s fixed at one hour.
screenshot
Setting RSVP Parameters

If you view an event listing, you will now see an RSVP Now button at the end of the listing. You can also send out email invitations that include this button to prompt a response (See How to Post and Email an Event, which explains the related ChimpBlast plugin for use with MailChimp email broadcast accounts).

Event listings include an RSVP Now! Button

Click the button or the headline, and you’ll be taken to a view of the single event with the RSVP Form displayed.

screenshot
Clicking button or other link to single event display brings up the RSVP Form

The RSVP editor will also display options for setting prices for online payments if you have PayPal enabled. See How to Set Up PayPal with RSVPMaker for details.

Improvements to RSVP Report

I’ve upgraded the RSVP Report to be a little neater, include a function for printing reports, and add an option for deleting entries (including spam entries or test entries).

RSVP Report, showing the listing of upcoming events and how many RSVPs for each:

Listing of responses for a specific event:

Note the new “Format for Printing” link, which pulls up a version of this report that opens in a new window with no links or WordPress branding / navigation showing.

Clicking the delete link under a name brings up a confirmation screen. If there were guests associated with the entry, you’ll be asked if you want to delete them, too.

If you want to create fancier reports, you can do so by overriding the rsvp_report function (See: Changing the RSVP Form, Other Customizations)

Changing the RSVP Form, Other Customizations

Note: RSVPMaker 2.5 makes more advanced customization of the RSVP form available from within the administration console, which may eliminate the need for some code-level customization.

RSVPMaker includes a mechanism for allowing you to add custom functions or override the some of the default functions included with the plugin. Specifically, you can override any of the functions defined in rsvpmaker-plugabble.php. You do this by adding your own rsvpmaker-custom.php file to the plugins directory (the directory above the rsvpmaker folder). My distribution includes a sample rsvpmaker-custom.php file but it will not be activated until you move it to the new location.

Essentially, this lets you plug in your own functions within my plugin. The idea is to provide some freedom to customize, without losing the benefit of upgrades to the core rsvpmaker code.

Modifying the event_content function

More extensive customizations are possible by overriding the event_content function, although this is a longer, more complex function. If you open the rsvpmaker-plugabble.php file, you will see the functions are wrapped with if(!function_exists(‘function_name’) ).

If you copy the function definition for event_content into your custom.php file, you will be able to modify the function as necessary for your purposes.

Creating an Event Template

When a single event is displayed, the standard single post template may tend to cause confusion because it juxtaposes the posting date with the event date. This is particularly a concern for post templates that feature the publication date prominently at the top of the post.

You can avoid this problem by adding a single-rsvpmaker.php file to your theme. WordPress will load this instead of the single.php template for an event post type.

A sample single-rsvpmaker.php file for the Twentyten theme is included with the RSVPMaker download, but you must copy it from the plugin folder to the theme folder to get it to take effect. Note that this file may not work with themes other than Twentyten without modification.

Most themes include a single.php file that you can modify to remove (or de-emphasize) the code that outputs the post publication date. I also recommend removing the code that outputs the comments template because people tend to be confused by having two forms on the page (the RSVP form and the comment form).

Updated 12/29/2010 to reflect change in file naming (single-rsvpmaker.php rather than single-event.php).