#Setting up an Events section in a wiki? (Event Calendar)

5 messages · Page 1 of 1 (latest)

visual ibex
#

Hi everyone! I want to create a section where users can add and browse upcoming events (seminars, workshops, ceremonies, etc.). Ideally, it would work like this:

  1. A main “Events” page or portal that lists all upcoming events, possibly as a calendar or directory.
  2. A submission page where users can easily add events using predefined fields (event name, date, description, link for details, and an optional poster).
  3. Upcoming events are displayed as a widget in a condensed format on the wiki’s main page.

Do you have any recommendations for best practices when implementing an events directory or event calendar in a wiki? Are there any wikis that already do this well that I could look at for reference? Or do you know of extensions or templates that could provide this functionality?

Thanks in advance for any advice!

<@&1195125742653149294> <@&407534909746577418>

hallow zealot
#

For 3, check out the Cargo extension. It's pretty janky and requires some setup work, but would allow you to query events within a date range. For example, Blue Archive Wiki uses this template to show current gacha banners on the main page automatically. The data is populated by the banner template and stored in a SQL table.

#

I think 3 might also be doable with DPL3. It doesn't allow you to filter by date, but you could make it so that the template showing the data checks for a date range and displays nothing if the date is not in range.

#

Another option is to run a bot to generate a json page with all the information for all event pages. Then you can use a Lua module to parse the json page and generate content. For example, Strinova Wiki's main page has a list of current and upcoming events generated by a module, which reads data from auto-generated json pages such as this. It requires running a bot and perform periodic purging, but would put everything in your control since both Cargo and DPL3 are extensions prone to breakage.