The JEM Embed plugin allows you to get JEM events as structured data (JSON). This makes it possible to show JEM events on other websites that are not running Joomla.
The data from the events are provided through a special URL. By adding parameters to this URL, you can control which events are returned and how they are displayed.
To configure the output from the source site see on this help page section 2–6, to embed the events on an other web site, see section 7.
JEM Embed works by calling a special Joomla URL. When you open this URL, Joomla returns a list of events instead of a normal webpage.
The base URL (mandatory):
https://domain.com/index.php?option=com_ajax&plugin=jemembed &group=content &format=json
You can add more parameters to this URL to filter events or change the output.
https://domain.com/index.php?option=com_ajaxresults in:&plugin=jemembed &group=content &format=json &max=10 &venueids=1,2 &catids=2,3,5
https://domain.com/index.php?option=com_ajax&plugin=jemembed &group=content &format=json &max=10 &venueids=1,2 &catids=2,3,5
When multiple parameters are used, only events that match all conditions will be returned.
To protect your data, access to the events is secured with a token.
Authorization header.Authorization: Bearer YOUR_SECURITY_TOKEN
The supplied jemevents.php server-side proxy sends this header automatically. Direct integrations must add it to their HTTP request.
| Parameter | Meaning |
|---|---|
type=today |
Events happening today |
type=unfinished |
Ongoing and upcoming events |
type=upcoming |
Only future events |
type=ongoing |
Events in progress |
type=archived |
Past (archived) events |
type=newest |
Newest events |
type=open |
Events without a start and end date |
type=all |
Published and archived events |
featured=on |
Include featured and non-featured events |
featured=off |
Exclude featured events |
featured=only |
Show only featured events |
| Parameter | Options |
|---|---|
title |
on | link | off |
date |
on | link | off |
time |
on | off |
enddatetime |
on | off |
category |
on | link | off |
venue |
on | link | off |
| Parameter | Description |
|---|---|
catids=1,2,3 |
Only events from these categories |
venueids=1,2 |
Only events from these venues |
| Parameter | Description |
|---|---|
max=n |
Maximum number of events, from 1 to 100 |
start=n |
Result offset, from 0 to 10000. Use meta.next_start for the next page. |
cuttitle=n |
Maximum length of the event title, from 1 to 500 |
dateformat / timeformat |
PHP date or time format, up to 64 characters |
noeventsmsg=text |
Plain-text message shown by the supplied client when no events are found, up to 200 characters |
n must be a positive number| means you can choose one optioncatids and venueids accept up to 50 unique positive IDsDownload and extract jemevents.zip
It contains:
jemevents.phpjemevents.jsjemevents-example.html (test page)readme.txtUpload these files to the external website:
jemevents.phpjemevents.js
Open jemevents.php and set:
The proxy translates its configuration names to the public endpoint parameters and resolves relative event links against the configured Joomla source URL. Direct consumers should configure Canonical JEM URL in the plugin when they require absolute links.
Add this line before </body>:
<script src="/jemevents.js"></script>
Place this where the events should appear:
<div id="feed-container"></div>
The events will be loaded automatically.