Comparison of Event Calendar Plug-ins

A quick look in no particular order (except mine first of course) .  Yes I am checking out the competition – I love developing, but need to get some return on it.  Hence some research on what others are doing.

Update as at: Feb 2012

amr-ical-events-list

  • free at wordpress (4 star rating, 2012 updates)
  • input via  ics file subscription
  • most customisable calendars, agendas, schedules etc, variety of views
  • date navigation and pagination
  • widgets

amr-events

  • paid addon to the above ($40)
  • full event creation, custom post types, taxonomies, locations
  • filtering
  • filters, pluggable functions
  • variety of map plugin integrations
  • multi lingual integration
  • produce ics feeds
  • uses wordpress as intended so you get benefits of being able to integrate other plugins

event espresso ($$$!)

  • lite version at wordpress (3 star rating)
  • paid version not cheap (lots of addons – top price $500, base at $90)
  • registration, ticketing, payment gateways
  • recurring events an addon

all in one event calendar

  • free version at wordpress (5 star rating, 2012 update)
  • is it error prone? (7 brokens for last version, but 13 works)
  • paid support at $120 hour
  • recurring, ics import/export, variety of views, widgets

events manager

  • free version at wordpress (4 star rating, last update 2010/10)
  • paid version $75
  • bookings, paypal
  • free version at wordpress (4 star rating, last update 2012)
  • sounds fairly full featured, views, recurring, customisable
  • user guide at $20
  • free at wordpress (4 star, but last update 2010)

events calendar

  • free version at wordpress (3 star)
  • create and present calendar for events
  • free version at wordpress (3 star, last 2009)
  • event registration

 

 

WordPress.com or self-hosted wordpress

Looking to set up a website using WordPress, one of the world most popular content management systems?

Assess your skills (ftp, html, css, php) and what you are prepared to do yourself, and how good you are at educatng yourself using the web.  Then consider your options.

WordPress.com PROS

  • easy to get going even if no skills
  • free, or can add premium feaures (they add up)
    • videopress ($60/year)
    • custom css for own styling or tweaks ($30/year)
    • post or moderate using your phone (usa only)
  • can map your existing  domain there ($12/year), or register a domain through them($17/year)
  • they’ll keep you up to date with wordpress at least.
  • language aspects are pre-loaded
  • if you want to allow comments, wordpress.com has good antispam built in, althoiugh you can also add that feature (akismet) in to a self hosted site.
  • you’re hosted by wordpress.com – so you are on a server where all the sites are running wordpress

WordPress.com CONS

  • limited to their themes, although premium themes available ($45)
  • totally reliant on them – if they disappear, so do you (unless you have figured out a way to keep own backup of your site and can arrange hosting, reload of site and repoint your domain name.  That said, this is what you would have todo on a self hosted site anyway.
  • cannot display ads, unless you revenue share advertising (high volume clients only)
  • have to pay extra NOT to have ads ($29.97)

Self Hosted WordPress PROS

  • Total control (along with that comes the requirement that you be able to manage that control)
    • own themes, plugins
    • customise functionality and style as you like
  • Cheap if you have the skills! Good wordpress hosting is available from $72/month

Self Hosted WordPress CONS

  • You need to purchase your own domain name and web hosting
  • If you don’t know what you are doing, you either need to hire some one or you will get into trouble.
  • Have to do/arrange WordPress upgradesm plugin and theme upgrades
  • Hiring people can get expensive
  • Have to add in what comes automatically at wordpress.com.
    • add in askimet anti-spam
    • add in own backups to your own pc (your host should do backups, but you should also have your own)
    • spikes in traffic may be a problem
  • With shared hosting (own server costs approximately $200/month), you are sharing the server – this reduce costs but if the other guys are up to no good…. That said a good wordpress host will normally switch servers for your promptly if you suspect a problem.

 More Information

What to do:

Consider

  • your skill levels
  • website requirements and it’s implications (eg:membership, comments – you need anti-spam)
  • how much you are prepared to pay for someone to assist you if you need assistance.

It is free to open a wordpress.com site, so give it a go – you’ll need it anyway if you want to use their anti-spam service askimet, or the wordpress.com stats via the jetpack plugin.

If you are comfortable with doing many things yourself or are prepared to hire the skills you need, and know how to test your website and any plugins you add, consider going with a self hosted solution.  You can either do it yourself – there are heaps of guides out there.

If you want to get going quickly, I can have you up and running within a day if you use icdsoft as your host

How to give your plugin pluggable functions

The amazing pluggable machine – photo by lukasWP

Pluggable functions are functions that can be overridden by others.  The key is which is defined first.  So to make one your plugin’s functions pluggable one should define it  as late as possible.  So others can get in first of course, but not so late that your plugin tries to use it before it is defined.

Understanding the sequence of wordpress actions is important. Some key action points in order of lateness are:

  • plugins_loaded
  • after_setup_theme
  • init (often used by plugins to initialise)
  • wp_loaded (when wp is fully loaded)
  • wp (when the wp object loads)

To make your plugin function pluggable by a theme or another plugin it needs to be defined AFTER the themes and the other plugins. So if your functions are mainly to do with output, you could move them as far back as the ‘wp’ action say.

In your main plugin file:

add_action ('wp','amr_load_pluggables', 10);    //move it later and a low priority

function amr_load_pluggables() {
    require_once('amr-pluggable.php');
}

The Pluggable Functions

Each pluggable function must test that it has not already been defined

if (!function_exists( 'the_pluggable_function')) {
    the_pluggable_function($parameters) {
    // the code
    }
}

The Override Function

The coder doing the overwriting  (ie plugging the pluggable function ) then just defines the function normally in their own plugin, or in their themes functions.php.  All they have to do is not bury it inside an action that executes AFTER the ‘wp’ action (or the action that loads the pluggable files).

Oh and it would be a good idea to fully understand where / when that pluggable function gets called and what it is supposed to do, what values to return etc.  You do not want to cause nasty side effects.  Looking at the code of the pluggable function is a good place to start.

Conditional Override

If they wanted to only override under certain circumstances, EG:  If you want to override ONLY on certain post types and only if certain conditions are met on the single view, then one could do

add_action('wp', 'define_my_override_function', 1) {
// using wp action as well as we need the post query et to have been done already, but a higher priority so will execute before the pluggable function load.
}
function define_my_override_function() {
global $post;
    if (is_single() and ($post->post_type === 'event') and (whatever other criterai)) {
 // then overwrite the pluggable, requires the pluggable loading to be later in the wp action sequence, say on action 'wp' late priority
        function the_pluggable_function($parameters) {
        // your code here
        }
     }
}