Need help installing Zap Calendar? Click here for a tutorial on installing Zap Calendar, or find out how to add additional functionality to your Zap Calendar site with the dozens of add-ons available for Zap Calendar.

Note: RSS Graffiti has closed their service as of May 1, 2015. The automatic posting of events to Facebook described in this article utilized this service.  We are looking at other methods of automatically posting events to Facebook.  You can still manually post Zap Calendar events to Facebook by using the Social Like plugin or copying and pasting the event URL to your Facebook status.

FB-f-Logo  blue 58

One of Zap Calendar's unique features is the ability to automatically post upcoming events to Facebook.  The timing of the event posting is configurable.  So, for example, the event could be posted on Facebook on the day of, the day before or even a week before the event without any manual intervention.  Automatic posting to Facebook is accomplished using Zap Calendar's RSS feature and the free service RSS Graffiti.  This article will describe how to configure both environments to enable posting of Zap Calendar events to Facebook, and will work with all versions of Zap Calendar (Basic, Standard and Pro).

 

There are two steps for setting automatic posting to Facebook: The Zap Calendar back-end setup and the RSS Graffiti setup.

 

The Zap Calendar Back-End Setup

RSS Graffiti works with Zap Calendar's RSS feature to decide what upcoming events to publish and when to publish them.  Through the Zap Calendar back-end setup, you control the timing of the when the event is posted to Facebook.  From the Zap Calendar back-end, select the calendar section (view section in Zap Calendar 3). Edit a calendar or create a new one, and edit the following RSS settings:

  • RSS Feed for this calendar: Yes
  • Use publishDate Tag in RSS Feed: Yes
  • URL Home Page for RSS Feed: {use URL of your web site home page}
  • Event format in RSS feed: Default
  • RSS publish mode: Daily
  • Weekly Mode - publish day: {not used}
  • Daily Mode - # of upcoming days: {Set to # of days prior to event to publish:1 for today's events, 2 for tomorrow's events, 7 for events 1 week away, etc.}

You should also ensure you have the time zone set in the Joomla global settings so the event is forward when you expect it.

The Facebook post will include an event image if one is available.  The category icon image or the first image in the event description will be used if available.  Just in case neither of these images are available, you can set a default category icon in the Zap Calendar global settings (new in version 4.0.9).  This image will be used if the others are not available.

A setting in the calendar you may wish to update is the date format field, located in the calendar's event tab.  This option is used to format the event date in the event title.  For example if you wish to display just the month and day in the event title (no day of week or year), use "%B %d".

From the calendar manager screen, click the RSS icon to obtain the RSS URL.  Copy this URL, which will be used in the RSS Graffiti setup.

The RSS Graffiti Setup

RSS Graffiti is a free web service that provides RSS posting of articles from RSS feeds to Facebook.  The free service allows up to 300 events to be posted per month.  This averages to 10 events per day.  If you have more than 10 events posted per day, you may want to consider the paid options available from RSS Grafitti.

To configure, log into your Facebook account and search for the facebook page "RSS Grafitti", or visit the page https://apps.facebook.com/rssgraffiti .  You will need to accept the Facebook requirements to continue.

Click the "Add New Publishing Plan" on the RSS Graffiti page to get started.  Enter a name that describes your site and click the "Create Publishing Plan" button.

You should now see the plan on your RSS Graffiti page.  Click the "Add New" button on the left side to add a new RSS source.  The dialog box will prompt you for an RSS feed:

rssgraffiti-add-new-source-1

Here is where you will paste your Zap Calendar RSS feed URL.  Click the "Add Source" to see the next dialog:

rssgraffiti-add-new-source-2

On this page, you may wish to change the Feed Title (used when displaying the feed in the RSS Graffiti admin screen).  You should also set the Maximum Posts per Update to "System Maximum", otherwise, you may not have all your events posted if you have more than one per day.

Clicking the "Advanced" tab at the top of the dialog box brings more options:

rssgraffiti-add-new-source-3

 

Selecting "Same as Item's Title" under the Format Message option will allow the facebook message of your event to include the Event title and date.  Make sure the Cut-off date/time is set to a date prior to the current date.

 After saving your changes, click the "Add Target" button on the right side of your publishing plan. Select "Facebook" as the platform, and the target settings dialog will appear.  The target can be your Facebook page, a Facebook group that you are a member of, or a page that you manage.  The "Publish on Behalf of" option will allow you to post the item either as yourself or the name of the page you manage.

rssgraffiti-target-settings-1

By default, the "Facebook Default Formatting" option is enabled.  This option means that RSS Graffiti will hand over the formatting of the post to Facebook.  If you do not like the way Facebook formats your event posting, uncheck this option and additional options appear:

rssgraffiti-target-settings-2

You can experiment with different settings to determine which layout you like best.  If you disable the Facebook Default Formatting option, you can also experiment with the layout by modifying the "Event format in RSS feed" option in the calendar's export tab.

Here is an example of a post of a Zap Calendar event using Facebook default formatting:

facebookpost

Summary

Posting events to Facebook is a great way to publicize your Zap Calendar events outside of your web site.  Using Zap Calendar and RSS Graffiti, the posting process is very easy since it is done automatically on your behalf.  You don't have to worry about forgetting to post your events to Facebook, since Zap Calendar and RSS Graffiti will take care of it for you.

Notes

Facebook keeps a cache of events posted when sharing or using the "Default Facebook Formatting" option.  So if, for example, you change the title or perhaps the image to an event, Facebook may not see the change without clearing the cache.  To clear Facebook's cache, use Facebook's linter tool, located at

https://developers.facebook.com/tools/debug

Enter the URL of the event (from the RSS feed) to clear the cache.

Facebook notes that it recommends images at least 300 x 300 pixels in size.  If you do not see your image displayed in the Facebook post, try an image at least this size.  You may need to use the Facebook linter tool to clear the old image from the cache.