Title: Blyzer Events
Author: blyzernet
Published: <strong>November 13, 2026</strong>
Last modified: November 13, 2026

---

Search plugins

![](https://ps.w.org/blyzer-events/assets/banner-772x250.png?rev=3800127)

![](https://ps.w.org/blyzer-events/assets/icon.svg?rev=3800127)

# Blyzer Events

 By [blyzernet](https://profiles.wordpress.org/blyzernet/)

[Download](https://downloads.wordpress.org/plugin/blyzer-events.1.6.0.zip)

 * [Details](https://wordpress.org/plugins/blyzer-events/#description)
 * [Reviews](https://wordpress.org/plugins/blyzer-events/#reviews)
 *  [Installation](https://wordpress.org/plugins/blyzer-events/#installation)
 * [Development](https://wordpress.org/plugins/blyzer-events/#developers)

 [Support](https://wordpress.org/support/plugin/blyzer-events/)

## Description

[Blyzer.net](https://www.blyzer.net/) is a platform for organising sports and e-
sports tournaments, leagues and races – registrations, schedule, results, tables
and statistics in one place.

Blyzer Events connects your WordPress site to your Blyzer.net events. Add an event,
paste its API key and place the “Blyzer event” block, the Elementor widget or a 
shortcode anywhere on your site. Results update automatically as the organiser enters
them on Blyzer.net – while the event is in progress even without reloading the page.

#### Features

 * Easy to set up – a 3-step guide, a connection check right after you paste the
   key and a preview of the whole event
 * “Blyzer event” block for the block editor and a “Blyzer event” widget for Elementor–
   choose the event and what to show, no shortcodes needed
 * Live updates – while the event is in progress the results on the page refresh
   by themselves (every 60 seconds by default), only when the browser tab is visible
 * Countdown to the start of the event and a “Register a team” button while registration
   is open
 * Event info – logo, name, sport, status with a LIVE indicator, dates, venue and
   counts
 * Whole event on one page with tabs – shows only the sections that have data
 * Groups – standings tables like on Blyzer.net (played, wins, draws, losses, overtime
   results, score, goal difference, points, form)
 * Playoff – a real bracket with connecting lines, highlighted winners, byes and
   teams not yet known; double elimination (winners, losers, grand final) and additional
   playoff are shown separately
 * Matches – schedule and results grouped by round, group, playoff round or day,
   with live score, final and upcoming states
 * Teams – a grid of team cards with logos (or initials when there is no logo)
 * Players – statistics with the columns your event uses (goals, assists, cards …)
 * Races – stage results and overall standings including DNS / DNF / DSQ
 * Always looks like Blyzer.net – Blyzer colours, hexagon crests and the Rajdhani
   font bundled with the plugin (no requests to Google); dark by default, light 
   or automatic on request
 * Sends your visitors to Blyzer.net for more – the next and last matches with a“
   Full schedule on Blyzer.net” button, top 10 players with “All statistics on Blyzer.
   net”, every match, team and the event link to its page on Blyzer.net (opens in
   a new tab)
 * Optional small “Results from Blyzer.net” logo under each widget (off by default)
 * Works in any theme – styles are isolated, tables scroll on phones with a sticky
   team column, no jQuery
 * Fast and robust – data is cached; when Blyzer.net is not reachable the last loaded
   data is shown and the site does not slow down
 * Your own HTML templates – globally or per event – with a simple `{{placeholder}}`
   syntax
 * Translation ready (Slovak translation included)

#### Shortcodes

Replace `123` with the ID of the event (shown in the “Available shortcodes” box 
when editing the event).

 * `[blyzer_tournament id="123"]` – the whole event with tabs
 * `[blyzer_event id="123"]` – event info
 * `[blyzer_groups id="123"]`
 * `[blyzer_playoff_rounds id="123"]`
 * `[blyzer_matches id="123"]`
 * `[blyzer_teams id="123"]`
 * `[blyzer_players id="123"]`
 * `[blyzer_race_stages id="123"]`
 * `[blyzer_race_standings id="123"]`

Optional attributes:

 * `theme="dark"`, `theme="light"` or `theme="auto"` – colour scheme (all shortcodes,
   default from the settings, dark unless changed)
 * `limit="10"` – show only the first N items; `blyzer_players` shows the top 10
   by default, `limit="0"` shows all players
 * `upcoming="3"` and `recent="3"` – `blyzer_matches` shows all live matches, the
   next 3 and the last 3 by default; `upcoming="all"` (or `limit`, or `status`) 
   shows the full schedule as before
 * `group="A"` – only the given group (`blyzer_matches`, `blyzer_groups`)
 * `status="played"`, `status="upcoming"` or `status="live"` – filter matches (`
   blyzer_matches`)
 * `phase="groups"`, `phase="playoff"` or `phase="friendly"` – filter matches by
   phase (`blyzer_matches`)
 * `team="45"` – only matches or players of the team with this Blyzer ID (`blyzer_matches`,`
   blyzer_players`)
 * `group_by="round"`, `"group"`, `"day"` or `"none"` – how matches are grouped;
   by default a league is grouped by round and a tournament by group and playoff
   round (`blyzer_matches`)
 * `order="desc"` – newest matches first (`blyzer_matches`)
 * `form="yes|no"`, `extra="yes|no"`, `diff="yes|no"` – show or hide the form, overtime
   and goal difference columns; by default they are shown when the data has them(`
   blyzer_groups`)
 * `extend="0"` or `extend="1"` – only the main or only the additional groups / 
   playoff (`blyzer_groups`, `blyzer_playoff_rounds`)
 * `sort="sum"`, `sort="name"` or the label of a statistic, e.g. `sort="g"` – order
   players (`blyzer_players`)
 * `sections="groups,playoff,matches"` – which tabs to show (`blyzer_tournament`;
   also `extra`, `teams`, `players`, `standings`, `stages`)
 * `header="no"` – hide the event info above the tabs (`blyzer_tournament`)
 * `live="no"` – do not refresh this shortcode automatically while the event is 
   in progress (all shortcodes)
 * `apply="no"` – hide the “Register a team” button (`blyzer_event`, `blyzer_tournament`)

#### Block and Elementor widget

In the block editor add the “Blyzer event” block, in Elementor the “Blyzer event”
widget. Choose the event (✓ means the connection works, ⚠ means the API key needs
checking), what to show and optional settings. They show exactly the same as the
shortcodes.

#### Live updates

When an event is in progress (Blyzer.net marks it as live, or a match is live), 
the results on the page refresh automatically. The page asks your own WordPress 
site for the new results, never Blyzer.net directly, and only while the browser 
tab is visible. The interval (60 seconds by default, at least 30) and turning it
off for the whole site are in Blyzer Events  Settings; a single shortcode can turn
it off with `live="no"`.

Examples – top 10 scorers: `[blyzer_players id="123" sort="g" limit="10"]`, next
five matches: `[blyzer_matches id="123" status="upcoming" limit="5" group_by="none"]`

#### Templates

Every shortcode (except `blyzer_tournament`) uses a built-in template unless you
set your own in Blyzer Events  Settings  Templates, or for a single event in the
event editor.

 * `{{title}}` – prints a value (HTML is escaped)
 * `{{totalStatistics.g}}` – prints a nested value
 * `{{#items}} … {{/items}}` – repeats the block for every item; for non-list values
   shows the block when the value is not empty
 * `{{^items}} … {{/items}}` – shows the block when the value is empty
 * `{{@index}}` – order of the item in a list, starting at 1
 * `{{count}}` – number of items

Besides the fields from Blyzer.net the plugin adds ready-made fields, so templates
need no logic – for example `statusLabel`, `isLive`, `isWinnerHome`, `home.name`,`
initials`, `playedAtDate`, `diffLabel` or `formItems`. The full list for each shortcode
is shown next to the template editor.

#### Styling

The widgets always use the Blyzer.net look (colours, hexagons, the Rajdhani font).
Developers can still adjust details with CSS custom properties on `.blyzer-events`,
for example `--blyzer-surface`, `--blyzer-text`, `--blyzer-border`, `--blyzer-radius`
or `--blyzer-font`. All built-in elements use classes starting with `bze-`.

### External services

This plugin connects to the Blyzer.net API to load the data of your events. Without
it the plugin cannot display anything.

 * Service: Blyzer.net API, operated by the Blyzer.net platform. Endpoints: `https://
   www.blyzer.net/api/event/all` (all data of the event in one request, used first).
   When it is not available (HTTP 404), the plugin remembers that for a day and 
   uses up to eight requests instead: `https://www.blyzer.net/api/event`, `/api/
   event/teams`, `/api/event/groups`, `/api/event/playoff-rounds`, `/api/event/matches`,`/
   api/event/players`, `/api/event/race-stages` and `/api/event/race-standings`.
 * What is sent: the API key of the event you entered in the event editor, in the`
   X-Auth-Token` HTTP header, and the standard technical headers of an HTTP request.
   The User-Agent is `BlyzerEvents/<version>; WordPress` – it does not contain the
   address of your site. As with any internet request, Blyzer.net sees the IP address
   of your web server. No data about your site visitors is sent. The key is never
   shown on your site, in the block or in any response of your site.
 * When: from your server, when a page with a Blyzer block, widget or shortcode 
   is displayed (or refreshed during a live event) and the cached data has expired–
   at most one request per event per cache period, no matter how many visitors there
   are. With the cache duration set to 0 a request is made on every page view (live
   updates still use at least a 10-second cache). Also when an event is saved or
   opened in the editor (connection check) and when you click “Verify API” in the
   list of events. When Blyzer.net asks the plugin to slow down (HTTP 429 with Retry-
   After) no requests are sent for that time.
 * Terms of service: https://www.blyzer.net/sk/obchodne-podmienky
 * Privacy policy: https://www.blyzer.net/sk/ochrana-osobnych-udajov

Stream links from the API are shown only when they point to YouTube, Twitch or Facebook(
https). All other links point only to www.blyzer.net, blyzer.net or cdn.www.blyzer.
net.

The Rajdhani font and the Blyzer.net logo are bundled with the plugin and loaded
from your own site – no request goes to Google Fonts or to Blyzer.net for them.

Images (event and team logos, player photos, flags, sport icons) returned by the
API are loaded by the visitor’s browser directly from Blyzer.net servers (`https://
cdn.www.blyzer.net` and other blyzer.net subdomains), so the visitor’s IP address
and browser information reach those servers. Only HTTPS addresses on blyzer.net 
and its subdomains are used. Live updates are loaded by the visitor’s browser from
your own site (`/wp-json/blyzer-events/v1/render`), not from Blyzer.net.

### Credits

 * Rajdhani font by Indian Type Foundry, licensed under the SIL Open Font License
   1.1 (`assets/fonts/OFL.txt`). Bundled as a Latin subset in WOFF2.
 * Blyzer.net logo and name are trademarks of Blyzer.net, the author of this plugin.

## Screenshots

[⌊Event header with status, key facts and a link to follow the event on Blyzer.net.⌉⌊
Event header with status, key facts and a link to follow the event on Blyzer.net
.⌉[

Event header with status, key facts and a link to follow the event on Blyzer.net.

[⌊Group standings with form, in the Blyzer.net dark style.⌉⌊Group standings with
form, in the Blyzer.net dark style.⌉[

Group standings with form, in the Blyzer.net dark style.

[⌊Playoff bracket with the third-place match.⌉⌊Playoff bracket with the third-place
match.⌉[

Playoff bracket with the third-place match.

[⌊Live, upcoming and latest matches with a link to the full schedule on Blyzer.net.⌉⌊
Live, upcoming and latest matches with a link to the full schedule on Blyzer.net
.⌉[

Live, upcoming and latest matches with a link to the full schedule on Blyzer.net.

[⌊Top players with statistics defined by the event.⌉⌊Top players with statistics
defined by the event.⌉[

Top players with statistics defined by the event.

[⌊The light colour scheme – chosen automatically on light websites.⌉⌊The light colour
scheme – chosen automatically on light websites.⌉[

The light colour scheme – chosen automatically on light websites.

[⌊Connecting an event: paste the key, check the connection and copy the shortcode.⌉⌊
Connecting an event: paste the key, check the connection and copy the shortcode.⌉[

Connecting an event: paste the key, check the connection and copy the shortcode.

[⌊The "Blyzer event" block in the block editor.⌉⌊The "Blyzer event" block in the
block editor.⌉[

The “Blyzer event” block in the block editor.

## Blocks

This plugin provides 1 block.

 *   Blyzer event Results, standings, playoff and matches of your Blyzer.net event.

## Installation

 1. Install and activate the plugin from Plugins  Add New, or upload the `blyzer-events`
    folder to `/wp-content/plugins/`.
 2. On Blyzer.net open your event  Detailed settings  API keys  “+” and copy the key.
 3. In WordPress go to Blyzer Events  Add New, paste the key and publish (the name 
    is filled in from Blyzer.net when you leave it empty). The editor shows whether
    the connection works and offers a preview.
 4. Add the “Blyzer event” block (or the Elementor widget) to any page and choose the
    event – or copy a shortcode from the “Available shortcodes” box.

## FAQ

### Where do I find the API key?

On Blyzer.net open your event  Detailed settings  API keys  “+”. You need to be 
the organiser of the event.

### The shortcode shows nothing / “No data yet.”

Check the “API status” column in Blyzer Events. 200 means the key works, any other
code means Blyzer.net did not accept the request. The column shows the last known
result; click “Verify API” to check it again. Make sure the event in WordPress is
published – unpublished events show the message from the settings instead.

### How often is the data refreshed?

By default every 300 seconds. You can change it in Blyzer Events  Settings. 0 disables
caching (not recommended on busy sites). Saving an event clears its cache immediately.

### Can I change how it looks?

The widgets are meant to look like Blyzer.net, so the colours and the font are fixed.
You can choose the dark (default), light or automatic colour scheme in Blyzer Events
Settings or per shortcode, developers can override the CSS custom properties (see
Styling), and you can write your own HTML templates. Custom templates made for version
1.4 keep working and keep their look; the accent colour setting was removed in 1.6.0.

### Why do the widgets link to Blyzer.net?

The plugin is a window to your event, Blyzer.net is the place with everything else.
Matches show the nearest and latest ones and players the top 10, with buttons to
the full schedule and statistics on Blyzer.net. Every link is part of the content(
the event, a match, a team or a player) and opens in a new tab. The “Results from
Blyzer.net” logo is optional and off by default – you can turn it on in Blyzer Events
Settings.

### What happens when Blyzer.net is down?

The plugin waits at most 8 seconds once, then shows the last successfully loaded
data and does not try again for a minute, so your pages stay fast. When Blyzer.net
answers “too many requests”, the plugin waits as long as Blyzer.net asks (at most
10 minutes) and shows the last loaded data meanwhile. Live updates on open pages
simply wait longer and try again.

### How do live updates work and do they slow down my site?

Only widgets of an event that is in progress refresh, every 60 seconds by default
plus a small random delay, and only while the browser tab is visible. The browser
asks your site, which answers from a short cache, so even many visitors cause at
most one request to Blyzer.net per event per cache period. Refresh requests that
would need new data from Blyzer.net are limited to 60 per minute per IP address (
IPv6 per /64 network); answers from the cache are not limited (with a persistent
object cache, up to 600 per minute). You can change the interval or turn live updates
off in Blyzer Events  Settings, or for one shortcode with `live="no"`.

### My site is behind Cloudflare or another proxy / CDN

The plugin takes the visitor’s IP address only from `REMOTE_ADDR`, because other
headers can be faked. Behind a CDN or reverse proxy all visitors may share the proxy’s
address and share the limit. If your server knows the real address, return it with
the `blyzer_events_client_ip` filter, for example:

    ```
    add_filter( 'blyzer_events_client_ip', function ( $ip ) { return $_SERVER['HTTP_CF_CONNECTING_IP'] ?? $ip; } );
    ```

Only do this when the proxy always sets the header, otherwise visitors could fake
it. The limits can be changed with the `blyzer_events_rest_rate_limit` and `blyzer_events_rest_rate_limit_cached`
filters.

### Does it work with caching plugins?

Yes. Pages can be cached as usual; live updates are loaded through the WordPress
REST API, which page caches do not store. If a security plugin blocks the REST API
for visitors, live updates are silently skipped and the page still shows the results
from the time it was loaded.

### What happens to my data when I delete the plugin?

Events and settings are deleted, unless you tick “Keep data on uninstall” in the
settings. Deactivating the plugin never deletes anything.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Blyzer Events” is open source software. The following people have contributed to
this plugin.

Contributors

 *   [ blyzernet ](https://profiles.wordpress.org/blyzernet/)

[Translate “Blyzer Events” into your language.](https://translate.wordpress.org/projects/wp-plugins/blyzer-events)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/blyzer-events/), check
out the [SVN repository](https://plugins.svn.wordpress.org/blyzer-events/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/blyzer-events/) 
by [RSS](https://plugins.trac.wordpress.org/log/blyzer-events/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.6.0

 * New: always looks like Blyzer.net – Blyzer colours, hexagon crests and the bundled
   Rajdhani font; dark colour scheme by default. The accent colour setting was removed.
 * New: matches show live matches, the next 3 and the last 3 with a “Full schedule
   on Blyzer.net” button (`upcoming`, `recent`; `upcoming="all"` for everything);
   players show the top 10 with “All statistics on Blyzer.net”; every match row,
   team and player links to Blyzer.net in a new tab; “Watch live” label on live 
   matches; “Follow on Blyzer.net” button in the event header.
 * New: optional “Results from Blyzer.net” logo under each widget (off by default,
   Settings or the setup guide).
 * New: stream links to YouTube, Twitch and Facebook are allowed.
 * New: “Blyzer event” block for the block editor with a live preview, and a “Blyzer
   event” widget for Elementor (only loaded when Elementor is active).
 * New: live updates – while an event is in progress the results refresh without
   reloading the page, only when the tab is visible, with a random delay and a longer
   pause after errors; the active tab and scroll position are kept. Setting for 
   the interval (default 60 s, minimum 30 s) and to turn it off, shortcode attribute`
   live="no"`.
 * New: countdown to the start of the event and a “Register a team” button while
   registration is open (`apply="no"` hides it).
 * New: a 3-step guide for new users, a connection check with a clear message right
   after the key is saved, a preview of the whole event, and the event name is filled
   in from Blyzer.net.
 * Improved: all data of an event is loaded with one request (`/api/event/all`) 
   and shared by all widgets on the page; falls back to the separate endpoints when
   it is not available.
 * Improved: when Blyzer.net answers HTTP 429 the plugin respects Retry-After (at
   most 10 minutes) and shows the last loaded data; only one request per event is
   made at a time.
 * Security: the live update endpoint is read-only, validates every parameter against
   an allow-list, returns only what the public shortcode shows, caches the result
   in memory (not in the database) and limits requests that need new data per IP
   address.
 * Security: events use their own capabilities (`edit_blyzer_events` …), given to
   administrators on activation and update; filter `blyzer_events_capability_roles`.
 * Security: links from Blyzer.net data may point only to www.blyzer.net, blyzer.
   net and cdn.www.blyzer.net; requests do not send the site address in the User-
   Agent and refuse compressed responses.
 * Improved: uninstalling removes events in every status, all cached data and the
   capabilities.
 * Requires WordPress 6.3 or newer.

#### 1.5.0

 * New: completely redesigned built-in templates in the Blyzer.net style – light,
   dark and automatic colour scheme (`theme` attribute and setting), accent colour
   setting.
 * New: `[blyzer_tournament]` – the whole event with tabs, shows only sections with
   data; works without JavaScript.
 * New: `[blyzer_event]` – event info with logo, sport, status, LIVE indicator, 
   dates, venue and counts.
 * New: `[blyzer_race_stages]` and `[blyzer_race_standings]` for races, including
   DNS / DNF / DSQ.
 * New: playoff bracket with connecting lines, winners, byes, double elimination
   and additional playoff; swipeable rounds on phones.
 * New: matches grouped by round, group or day (`group_by`), live / final / upcoming
   state, new filters `phase`, `team`, `order`, `status="live"`.
 * New: standings with played, overtime, goal difference and form columns (`form`,`
   extra`, `diff`), sticky team column on phones.
 * New: player statistics columns follow the statistics of the event.
 * New: many ready-made template fields (`statusLabel`, `isWinnerHome`, `home.name`,`
   initials` …); dates use the site time zone and formats.
 * Improved: when Blyzer.net is not reachable the last loaded data is shown, errors
   are remembered for 60 seconds and requests time out after 8 seconds.
 * Improved: the list of events no longer contacts Blyzer.net; API status is updated
   when data is loaded or when you click “Verify API”.
 * Security: only HTTPS images and links from blyzer.net are used, built-in templates
   use a strict HTML allow-list, the API key field is hidden and validated, shortcode
   attributes are validated, responses are limited to 5 MB.
 * Styles are isolated from the theme; styles and scripts load only on pages with
   a shortcode.

#### 1.4.0

 * New: built-in templates for all shortcodes, so they work without writing any 
   HTML.
 * New: shortcode attributes `limit`, `group`, `status` and `sort`.
 * New: templates support nested values (`{{totalStatistics.g}}`), empty blocks (`{{
   ^items}}`) and `{{@index}}`.
 * New: formatted match date and time (`{{playedAtDate}}`, `{{playedAtTime}}`) using
   the site date and time format.
 * New: Settings link on the Plugins screen.
 * Fix: a fatal error when data was loaded from the cache.
 * Fix: deactivating the plugin no longer deletes events and settings.
 * Fix: a fatal error when deleting the plugin.
 * Fix: saving one settings tab no longer erases the other.
 * Fix: bulk editing events no longer resets custom templates.
 * Fix: PHP warning when the API returned no data.
 * Security: API requests use HTTPS, templates and settings are sanitized, all output
   is escaped, nonce and capability checks on save.
 * Plugin is now in English with a Slovak translation.

#### 1.3.0

 * First version.

## Meta

 *  Version **1.6.0**
 *  Last updated **21 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.3 or higher **
 *  Tested up to **7.1.4**
 *  PHP version ** 8.0 or higher **
 * Tags
 * [league](https://wordpress.org/plugins/tags/league/)[results](https://wordpress.org/plugins/tags/results/)
   [sports](https://wordpress.org/plugins/tags/sports/)[standings](https://wordpress.org/plugins/tags/standings/)
   [tournament](https://wordpress.org/plugins/tags/tournament/)
 *  [Advanced View](https://wordpress.org/plugins/blyzer-events/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/blyzer-events/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/blyzer-events/reviews/)

## Contributors

 *   [ blyzernet ](https://profiles.wordpress.org/blyzernet/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/blyzer-events/)