by Alwyn Barry on WordPress.org
JS Integration for ChurchSuite is provides ChurchSuite event and smallgroup details for display in a Wordpress website.

JS Integration for ChurchSuite is a plugin to provide ChurchSuite event and
smallgroup details for display in a WordPress website without using iFrames.
The data is drawn from ChurchSuite JSON feeds using the v3 API and is displayed
natively within your website using Javascript. This plugin uses the ChurchSuite
Javascript v3 public API library to implement much of its functionality, but
needs a lot less technical understanding to use in a WP website than trying
to integrate the libraries and write it all from scratch for yourself.
Nonetheless, it is simple to modify the output of the shortcodes to suit
your own needs.
For the technical among you: This shortcode works on the ‘client side’,
building the in the user’s browser. This can be faster, in some circumstances,
and more responsive to user input.
We also provide the cs-integration plugin. That plugin uses an older
ChurchSuite API which permits more flexibility because a range of parameters can
be provided at call rather than having to create an ’embed configuration’ on
ChurchSuite to pass in the shortcode call. The other plugin also does all the
work on the ‘server side’ so that the server holds the cached data and the
server creates all the html for output. This plugin use Javascript to create
the response and cache in the client browser. The server-side implementation
can be faster for many repeated requests, and is less speed dependent on the
client provision. However the client-side implementation can be faster for an
individual user and more immediately responsive to interaction. This plugin also
uses Alpine.js to output the HTML, which means an end user could change the
output by changing the HTML files without having to get into the php of the
plugin. However, the Alpine.js code isn’t straightforward and so this is likely
to be of little advantage. Really, it’s simply ‘horses for courses’ – you have
the choice of which to use!
If you have a problem or a feature request, please send a message to the author.
Currently there is no demo site, but we will create examples shortly
For each of the examples below:
mychurch with the name of your church which you use to get totrinity or christchurch … see the first namehttps:// in your Churchsuite link.62436903-841e-4239-bc95-e6952e17430e with the unique Id for theFor the Event Cards shortcode, place the shortcode into a page or post or
into a shortcode block. The shortcode will be:
[cs-js-event-cards church_name=”mychurch” configuration=”62436903-841e-4239-bc95-e6952e17430e”]
(replacing the church name and the configuration with your church name and
the Embed configuration unique ID you want to use)
For the Event List shortcode, place the shortcode into a page or post or
into a shortcode block. The shortcode will be:
[cs-js-event-list church_name=”mychurch” configuration=”62436903-841e-4239-bc95-e6952e17430e”]
(replacing the church name and the configuration with your church name and
the Embed configuration unique ID you want to use)
For the Calendar shortcode place the shortcode into a page or post or into a
shortcode block. The shortcode will look like:
[cs-calendar church_name="mychurch" configuration="62436903-841e-4239-bc95-e6952e17430e"]
(replacing the church name and the configuration with your church name and
the Embed configuration unique ID you want to use. The configuration should
be one which returns events for a number of month – the ‘grid’ option is
best to enable you to select the right data for this shortcode.)
For the Smallgroups shortcode, place the shortcode into a page or post or
into a shortcode block. The shortcode will be:
[cs-js-smallgroups church_name=”mychurch” configuration=”62436903-841e-4239-bc95-e6952e17430e”]
(replacing the church name and the configuration with your church name and
the Embed configuration unique ID you want to use)
Sadly, ChurchSuite developers won’t allow us to use any parameters inline to
modify what data is received. You must use the (very limited) configuration
available in the Embed Configuration. The ‘look and feel’ of the data as
presented on your website can be altered considerably by adding your own CSS
to your theme file – all items output are within their own css classes and so
everything can be styled to fit with your website.
And, if you want to, you can use an HTML block to do your own output using
Alpine.js. Just follow the examples towards the bottom of
https://kingshope.church/events. The libraries you need have been impported for
you by this plugin, and so, for example, a simple unstyled list of event titles
can be generated by adding an HTML block with:
(replacing demo with your church name, and the hex string with your
configuration unique id).
The plugin itself is released under the GNU General Public License. A copy of
this license can be found at the license homepage or in the csjs-integration.php
file in the top comment.