A simple event calendar created for musicians but useful for anyone. Supports multi-day events, styled text, links, images, and more.
I'm Matthew Fries (that's where the MF in MF Gig Calendar comes from) and I'm a NYC jazz pianist and part-time web developer. I developed this plugin because I wanted a flexible and easy to use performance calendar for my own music website. In the process I tried to create something that would work for more than just musicians. I've added a few features since it started:
- beginning and end dates for multiple-day events
- WordPress's WYSIWYG editor for the event description so you can include styled text, links, images and other media in your event list
- a duplicate function to make it easier if you have a repeating event that you don't want to re-enter over and over
- an RSS feed
- a widget to list a few upcoming events in the sidebar
- an archive to view past events by year
- supports localization (waiting on translations...)
- shortcode variables to customize the output
The calendar can be placed in any PAGE or POST on your WordPress site - even in more than one place. Just include the following short code where you want the calendar to appear:
Requires WordPress 3.3 or newer because of the changes to the WordPress WYSIWYG editor. Personally tested up to 5.2.3.
Want to keep in touch? Here are a few options...
As a general rule I've tried to keep this as simple and flexible as possible. If you're a musician and you want really fancy - ticketing info, mapping, tour grouping, and all the bells and whistles you can stand - you should check out "Gigs Calendar" by Dan Coulter over at blogsforbands.com. It's a great plugin that I've also used quite a few times on other sites that has all kinds of cool features specific to musicians and fans. Really, it's great.
How do I get a calendar to show up in a Page or Post on my site?
Easy! Use the MF Gig Calendar shortcode:
Just put that code on any Page or Post in the spot where you want the calendar to appear. WordPress does the rest and any settings are optional.
How do I use styled text and images in my event descriptions?
MF Gig Calendar uses the built-in WordPress WYSIWYG editor. It's exactly the same process you use when creating Posts or Pages.
Does MF Gig Calendar put a bunch of junk in my WordPress database?
One database table is installed to store your events. That's it!
What happens if I add more than one event on a particular day?
The output is only sorted by date, so if you enter multiple events on the same day they will be displayed on most servers in the order you created them. I chose not to sort by time because I don't require you to enter a time for your event and allow you to use whatever term you want (2pm, afternoon, all day, 20.30, etc).
Can I change the look of the calendar on my site?
Most of the look of the calendar is controlled by your theme. A very small stylesheet to control basic layout is included in the file '/wp-content/plugins/mf-gig-calendar/mf_gig_calendar.css'. The stylesheet contains an outline/example of the basic output to help you style the calendar as you like. Got your own interesting layout you'd like to share for me to include in a future update? Let me know!
Why do you ask me to enter a URL for my calendar in the settings? Shouldn't that just happen automatically?
The MF Gig Calendar widget and the RSS feed use the URL you enter in Settings to link to the calendar on your site. You can put the calendar in any Page or Post on your site - even in more than one place - so this URL is the place you want people to go to see what's going on. It's completely optional. The plugin will work fine without it.
My calendar is blowing up the design on my page extending past the margins! The fonts don't match the fonts on my site! What is going on?
The first thing to check is that you don't have
<pre> tags around your shortcode. Sometimes formatting comes along when you cut and paste into the WordPress editor. If you flip to the "Text" tab in the editor you might see something like this:
<pre>[mfgigcal]</pre> Get those
<pre> tags out of there!
Why doesn't MF Gig Calendar...(insert your cool idea here)...?
I tried to keep the basics of this plugin pretty simple so that it would be useful to a broader range of people. It's all about displaying a useful list of events on one page or post and nothing more. If you have a suggestion for a really useful feature please let me know and I'll consider adding it in a future update!
Version 1.1 * Another attempt to fix the bug causing dates to be off by one day in certain hosting environments. * Changes to the Archives year list * Added ability to limit the number of years listed in the Archive submenu
- Fixed issue with dates being off by a day!
- Updates to be compatible with PHP 7
- By popular and insistant demand "Archive" is back.
- More bug fixes
- Bug fixes - sorry...
- Updated French translation
- Fixed database update errors
- UTF8 support (Note: this requires altering the mfgigcal table in your database, so please make sure you backup your data first)
- French translation by Tanguy Kerfriden
- Ability to hide details from event lists
- Fixed bug with uneditable events in admin area
- Other upgrades
- Date selector fixes (I hope!!)
- Spanish translation by Andrew Kurtis (WebHostingHub.com)
- Ability to set the default title for individual event display
- Layout fix! Sorry!
- New date selection process
- Some short codes now allowed in event descriptions
- Bug fixes
- Bug fixes - limit and offset now working correctly
- Enhanced date range options
- Improved documentation
- Bug fixes
- Added default sort order for calendar archive
- Added the ability to turn off the default link to individual event display
- Admin editor user permissions relaxed - now any user who can edit posts can access the event calendar tool
- Cleanup: removed trailing ? on empty query strings
- Swedish Translation (thanks to Marie Brunnberg)
- New shortcode attributes added to customize output
- Shortcut to grab a single event for display
- The archive now (correctly) only shows past events
- Ability to choose your date format in the widget
- Ability to selectively display ranges of dates, specific dates, or a single event
- Bug squashing
- Fixed links to individual events to work with some AJAX powered themes
- Localization of the Date-Picker jQuery utility
- Polish translation (thanks to Julian Battelli)
- Added the translation tools. They did not upload in the 0.9.6 update. Subversion makes my brain hurt.
- Internationalized date display is now based on WordPress language settings
- Prepared the plugin for internationalization - waiting on translations!
- Event titles in widget now link to individual events if the calendar location is set in the plugin settings.
- Security fixes! Silly me. Please update!
- Really just a re-upload of version 0.9.4. Still trying to get my brain around subversion.
- Updated the calendar layout slightly to get the event description to appear next to the date instead of below it by default in some themes.
- Updated the Settings and About pages to (hopefully) be easier to understand.
- A few other minor fixes.
- Fixed a bug where the links to individual events didn't work unless permalinks was turned on.
- Fixed the installer!! When I added the options page in version 0.9 it caused a problem with setting up the plugin for the first time. There was a PHP timeout you may have been experiencing. This should be fixed now! Sorry...
- Fixed a typo and a couple broken links in the documentation.
- I skipped straight to version 0.9 because I feel like I'm almost 100% happy with this thing and I'm ready to put it in the WordPress repository. There were just so many enhancements in this round that I couldn't just go up one tenth. Plus I really like the number 0.9 - it kind of looks like an emoticon for a person sitting at a computer screen (use your imagination).
- Separate RSS feed.
- Options page to customize output.
- About page with installation instructions.
- Upgrades to the sidebar widget.
- Replaced table-based display with more stylable output layout.
- Adds display of individual events from the calendar. I can share individual events on Facebook now.
- Now requires WordPress 3.3+ and the fully functional WYSIWYG editor works great thanks to this WordPress upgrade!
- Added widget displaying a few upcoming events in the sidebar. That's nice.
- First working version. Just mucking around and learning how the heck to create a WordPress plugin! 😛
- Upload the folder 'mf-gig-calendar' to the '/wp-content/plugins/' directory,
- Activate the plugin through the 'Plugins' menu in WordPress.
- Insert the shortcode
[mfgigcal]wherever you want the calendar to appear (read the instructions in the widget for advanced display options).
- Start entering events under the 'Event Calendar' menu!