Title: vblg OI Contest Schedule
Author: hanyixuanten
Published: <strong>August 12, 2026</strong>
Last modified: August 12, 2026

---

Search plugins

![](https://s.w.org/plugins/geopattern-icon/vblg-oi-contest-schedule.svg)

# vblg OI Contest Schedule

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

[Download](https://downloads.wordpress.org/plugin/vblg-oi-contest-schedule.0.2.0.zip)

 * [Details](https://wordpress.org/plugins/vblg-oi-contest-schedule/#description)
 * [Reviews](https://wordpress.org/plugins/vblg-oi-contest-schedule/#reviews)
 *  [Installation](https://wordpress.org/plugins/vblg-oi-contest-schedule/#installation)
 * [Development](https://wordpress.org/plugins/vblg-oi-contest-schedule/#developers)

 [Support](https://wordpress.org/support/plugin/vblg-oi-contest-schedule/)

## Description

vblg OI Contest Schedule displays currently running and upcoming competitive programming
contests with local times and live countdowns. Contests that have ended are not 
displayed.

The plugin adds an **Upcoming OI Contests** widget to the WordPress dashboard. To
display the schedule on the front end, add the **vblg OI Contest Schedule** block
to a post or page.

Features include:

 * Upcoming and currently running contests ordered by start time.
 * Contest platform, title, start time, end time, and live countdown.
 * Dates formatted in each visitor’s client device time zone, rather than the time
   zone configured in WordPress, and identified by its IANA name (for example, `
   Asia/Shanghai`).
 * Responsive and compact layouts.
 * A five-minute cache using the WordPress Transients API.
 * English and Simplified Chinese translations.

#### Block settings

Add the **vblg OI Contest Schedule** block from the block inserter. Its settings
sidebar lets you display between 1 and 50 contests and enable the compact layout.
The block is rendered dynamically so it always uses current contest data.

#### Shortcode options

The shortcode remains available for classic editors and templates. By default it
displays up to 10 contests:

    ```
    [oics_oi_contest_schedule]
    ```

Use `limit` to display between 1 and 50 contests:

    ```
    [oi_contest_schedule limit="20"]
    ```

Set `compact` to `true` to use the compact layout:

    ```
    [oi_contest_schedule limit="20" compact="true"]
    ```

### External Services

This plugin connects to GitHub Raw Content to retrieve the public `contests_all.
json` feed maintained by the OI-contest-fetch project. This connection is required
to obtain current contest information and occurs when the five-minute WordPress 
transient cache has expired.

The plugin does not send visitor content, WordPress account data, or cookies. The
request includes a user-agent containing the plugin version and the site’s home 
URL. Standard network metadata, including the server IP address, is visible to GitHub
when the request is made.

Service and data source:

 * Contest feed: https://raw.githubusercontent.com/hanyixuanten/OI-contest-fetch/
   master/contests_all.json
 * OI-contest-fetch project: https://github.com/hanyixuanten/OI-contest-fetch
 * GitHub Terms of Service: https://docs.github.com/en/site-policy/github-terms/
   github-terms-of-service
 * GitHub General Privacy Statement: https://docs.github.com/en/site-policy/privacy-
   policies/github-general-privacy-statement

## Blocks

This plugin provides 1 block.

 *   Oics Contest Schedule

## Installation

 1. Upload the `vblg-oi-contest-schedule` directory to `/wp-content/plugins/`, or install
    the plugin ZIP through the WordPress Plugins screen.
 2. Activate **vblg OI Contest Schedule** through the Plugins screen.
 3. Open the WordPress dashboard to see the contest widget.
 4. To show the schedule on the front end, add the **vblg OI Contest Schedule** block
    to a post or page.

## FAQ

### Which contests are shown?

The plugin shows contests whose end time is still in the future, including contests
that are currently running. Finished contests and entries without a valid URL are
omitted.

### Which time zone is used?

Dates are formatted in the visitor’s client device time zone using the browser’s
internationalization API. The time zone configured in the WordPress site settings
is not used.

### How often is the contest data refreshed?

The remote response is cached by WordPress for five minutes. After the cache expires,
the next schedule request retrieves fresh data.

### What happens if the data source is unavailable?

The schedule displays a temporary-unavailable notice instead of contest entries.
WordPress pages and the dashboard continue to work normally.

### Can I use another data source?

Developers can replace the feed URL with the `oics_contest_data_url` filter. The
replacement endpoint must return the same JSON structure as the default feed.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“vblg OI Contest Schedule” is open source software. The following people have contributed
to this plugin.

Contributors

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

[Translate “vblg OI Contest Schedule” into your language.](https://translate.wordpress.org/projects/wp-plugins/vblg-oi-contest-schedule)

### Interested in development?

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

## Changelog

#### 0.2.0

 * Renamed the plugin, package slug, text domain, and distribution workflows to **
   vblg OI Contest Schedule**.
 * Renamed the shortcode to `[oics_oi_contest_schedule]`.
 * Changed the dashboard widget to use the standard responsive layout instead of
   the compact layout.
 * Changed translation handling to use WordPress.org language packs and excluded
   translation sources from release packages.

#### 0.1.0

 * Added the upcoming contest dashboard widget.
 * Added the **vblg OI Contest Schedule** editor block with limit and compact layout
   settings.
 * Added the `[oics_oi_contest_schedule]` shortcode with `limit` and `compact` options.
 * Added visitor-local time formatting and live countdowns.
 * Added platform styling and responsive layouts.
 * Added five-minute transient caching for the contest feed.
 * Added English and Simplified Chinese translations.

## Meta

 *  Version **0.2.0**
 *  Last updated **1 day ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.4 or higher **
 *  Tested up to **7.0.4**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [block](https://wordpress.org/plugins/tags/block/)[contest](https://wordpress.org/plugins/tags/contest/)
   [dashboard](https://wordpress.org/plugins/tags/dashboard/)[schedule](https://wordpress.org/plugins/tags/schedule/)
 *  [Advanced View](https://wordpress.org/plugins/vblg-oi-contest-schedule/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/vblg-oi-contest-schedule/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/vblg-oi-contest-schedule/reviews/)

## Contributors

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

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/vblg-oi-contest-schedule/)