# Discourse Calendar - How to?

**URL:** https://meta.discourse.org/t/discourse-calendar-how-to/165536
**Category:** Support
**Tags:** events
**Created:** [September 27, 2020, 2:51pm UTC](https://meta.discourse.org/t/discourse-calendar-how-to/165536 "2020-09-27T14:51:46Z")
**Posts on this page:** 16
**Page:** 1

<div class="post-metadata">

### Author: ![ben\_t](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ben_t/32/194476_2.png) [@ben\_t](https://meta.discourse.org/u/ben_t)
#### Post date: [September 27, 2020, 2:51pm UTC](https://meta.discourse.org/t/discourse-calendar-how-to/165536/1 "2020-09-27T14:51:46Z")

</div>

Hello All,  
First time Discourse installer / maintainer. Long time user.  
I"m feeling a bit lost with some of the plug ins and apparent lack of documentation. My focus at the moment is the Discourse Calendar plugin.  
I have found 2 threads.  
The actual plug in - [Discourse Calendar](https://meta.discourse.org/t/discourse-calendar/97376)  
A request for help [How to use the calendar plugin?](https://meta.discourse.org/t/how-to-use-the-calendar-plugin/104378)

Neither really explain how to use the plugin other than creating the main calendar in a first post, and how to add events to that main calendar in replies to the same post.  
The screen shots show multiple colors which makes me think there may be a way for a calendar to draw from multiple categories?

In the plugin settings, there is also `calendar categories` setting, but I’m unclear on how to use this. I was able to get a calendar to appear at the top of a Category display page, but it is empty.  
I’m currently using `categoryId=7;postId=19` where catagory 7 is the catagory I want the calendar to appear at the top of. Then I wasn’t clear on postID. I tried a post that as an event in it. A post that has a calendar as the first post and dates as replies. The calendar appears at the top of the Catagory (in a misshaped non scrollable box), but no events appear on it, regardless of what postID I use.

The helper text also offers `Other valid settings: tzPicker, weekends and defaultView.`  
but no explanation of how or what those do or how to use them.

So in short, I’m looking for any pointers, or links to something that explains the plugin with a bit more detail.

Ultimately what I’m hoping for is some way to have a calendar that is able to read into multiple posts in a Category. What I’m doing now is instructing users to create 2 posts. Create a new topic and add an Event. Include the description of the event etc… This is the thread for discussion about the event.  
Then I tell them to copy the link to that topic, and go to the pinned “Master Event Calendar” topic and reply to that inserting a date, and then pasting the link to the Event. That way the Master Event Calendar topic calendar has all of the events, but there are separate topics to allow for discussion about the events.

It feels like there has to be a better way, but I don’t know what it is.

Thanks very much for any insight.

---

<div class="post-metadata">

### Author: ![Benjamin\_D](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/benjamin_d/32/277831_2.png) [@Benjamin\_D](https://meta.discourse.org/u/Benjamin_D)
#### Post date: [September 27, 2020, 3:17pm UTC](https://meta.discourse.org/t/discourse-calendar-how-to/165536/2 "2020-09-27T15:17:36Z")

</div>

Hi!  
Postid is to be found in the json and is the Id of the post where the calendar is declared (not the topic Id)

About the color coded events, I believe those come (for now 😅 ) from the plugin [events](https://meta.discourse.org/t/events-plugin/69776) (but I might have missed a commit!)

And maybe this can answer some of your questions:

> [@Creating and managing events](https://meta.discourse.org/t/creating-and-managing-events/149964/51):
>
> If you just install the discourse-calendar plugin (and nothing else), there are three types of time-related items you can add to a Discourse composer, [event], [calendar] and [date]. The use cases for these, and how they interact, are getting a little muddled if you’re not already familiar with the plugins themselves and Discourse in general.
> 
> For example, the existing discourse-calendar plugin requires you to create [dates] in posts in the same topic as the [calendar]. This [event] feature set (which is in the same plugin), requires you to create [events], which are different from [dates], but also are added to a calendar that looks exactly the same as the topic-specific [calendar] which included the [dates], but acts quite differently

---

<div class="post-metadata">

### Author: ![ben\_t](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ben_t/32/194476_2.png) [@ben\_t](https://meta.discourse.org/u/ben_t)
#### Post date: [September 27, 2020, 3:59pm UTC](https://meta.discourse.org/t/discourse-calendar-how-to/165536/3 "2020-09-27T15:59:31Z")

</div>

Thanks very much. PostID vs TopicID is where I was going wrong. That has cleared that up. I still wish there as a “man page” or something equivalent for all possible variables and inputs on the plugin, but I’ll keep playing with it.

Also thanks for the link to the Event Plugin. As the post your link lead to, it is confusing how Calendar vs Date vs event are linked and not linked considering that the Event Plugin is part the Calendar Plug.

---

<div class="post-metadata">

### Author: ![runinsideout](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/runinsideout/32/213837_2.png) [@runinsideout](https://meta.discourse.org/u/runinsideout)
#### Post date: [March 16, 2021, 11:34pm UTC](https://meta.discourse.org/t/discourse-calendar-how-to/165536/5 "2021-03-16T23:34:45Z")

</div>

@ben_t , your use case describes _exactly_ the type of functionality I was hoping for… various groups could have discussion threads about their events, but through the creation of their event in their topics they would populate the Master Events calendar which contains all events from all groups. Then, readers of the main event calendar could click any item in the calendar and be take to the thread for the event.

Don’t get me wrong, as it stands, I can appreciate the idea of an event in a thread that doesn’t make it to the main events calendar (say, the small group holding planning meetings leading up to the big event on the main calendar),

However, I do think our use case would be a great feature to have as I can see a number of implementations (school sports calendars, community bulletin boards… )

As an aside. I found came across an alternative way to create the **topic** where you have the **calendar** in the **first post** and then **reply** to the calendar with **dates** that get **added to the top post** … without going into settings and counting thread numbers…  
Somewhere in the first post, put

```plaintext
[calendar]
[/calendar]

```

I came across that on the [github page|[Discourse Calendar and Events](https://meta.discourse.org/t/discourse-calendar/97376)]  
Think it might’ve been added after you posted this though.

… I’m off to figure out this business with colors! 😃

---

<div class="post-metadata">

### Author: ![jrgong](https://avatars.discourse-cdn.com/v4/letter/j/c57346/32.png) [@jrgong](https://meta.discourse.org/u/jrgong)
#### Post date: [December 1, 2021, 8:23am UTC](https://meta.discourse.org/t/discourse-calendar-how-to/165536/6 "2021-12-01T08:23:11Z")

</div>

> [@Benjamin\_D](#):
>
> Postid is to be found in the json and is the Id of the post where the calendar is declared (not the topic Id)

Can anyone share the steps where to find the Postid to declare the calendar? I am stuck at this step and would really appreciate the help.

Edit: found it! In case anyone is struggling, you can take the following steps to find the `postId`. Let’s take this topic as example:

`https://meta.discourse.org/t/discourse-calendar-how-to/165536/5`

1. Remove the slug of the topic so it looks like this: `https://meta.discourse.org/t/165536/5`
2. Remove the post number at the end (`/5`) and replace it with `/posts.json`, so the URL looks like this;  
`https://meta.discourse.org/t/165536/posts.json`
3. Open the URL and you will find the required postId in the first line:  
 ![Screenshot 2021-12-01 at 12.30.32](https://global.discourse-cdn.com/meta/original/3X/e/f/efe8b71432714e54b20d7745e3c01bfd5feec715.png)
4. Paste the URL into the calendar plugin settings, so in our example it would look something like this:  
 ![Screenshot 2021-12-01 at 12.32.01](https://global.discourse-cdn.com/meta/original/3X/3/4/3422f58784a07a138f210c6f7e02d7ad7880a6f9.png)
5. Your calendar in the category should now display all `[date]` entries from that topic.

---

<div class="post-metadata">

### Author: ![Tara\_Walton](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tara_walton/32/244402_2.png) [@Tara\_Walton](https://meta.discourse.org/u/Tara_Walton)
#### Post date: [February 3, 2022, 5:40pm UTC](https://meta.discourse.org/t/discourse-calendar-how-to/165536/7 "2022-02-03T17:40:38Z")

</div>

> [@ben\_t](#):
>
> The helper text also offers `Other valid settings: tzPicker, weekends and defaultView.`  
> but no explanation of how or what those do or how to use them.

Can anyone answer what these settings are? I haven’t been able to find any reference to them except in this post and there’s no explanation. :sadpanda:

---

<div class="post-metadata">

### Author: ![Benjamin\_D](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/benjamin_d/32/277831_2.png) [@Benjamin\_D](https://meta.discourse.org/u/Benjamin_D)
#### Post date: [February 3, 2022, 6:21pm UTC](https://meta.discourse.org/t/discourse-calendar-how-to/165536/8 "2022-02-03T18:21:11Z")

</div>

```plaintext
[calendar weekends="false"]
[/calendar]

```

would hide the weekends

```plaintext
[calendar defaultView="listNextYear"]
[/calendar]

```

would show the list view as default (other options are `month` or `basicWeek`)

```plaintext
[calendar tzPicker="true"]
[/calendar]

```

would allow the user to choose the timezone in the upper right corner of the calendar

---

<div class="post-metadata">

### Author: ![Tara\_Walton](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tara_walton/32/244402_2.png) [@Tara\_Walton](https://meta.discourse.org/u/Tara_Walton)
#### Post date: [February 3, 2022, 6:25pm UTC](https://meta.discourse.org/t/discourse-calendar-how-to/165536/9 "2022-02-03T18:25:10Z")

</div>

Helpful, but does that mean this info for the setting is not applicable, or does it just set the default setting for the calendar in the post specified?

 ![image](https://global.discourse-cdn.com/meta/original/3X/f/d/fd4429b3ed347e2925179f96a9dad93b6aed766f.png)

---

<div class="post-metadata">

### Author: ![Benjamin\_D](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/benjamin_d/32/277831_2.png) [@Benjamin\_D](https://meta.discourse.org/u/Benjamin_D)
#### Post date: [February 3, 2022, 6:43pm UTC](https://meta.discourse.org/t/discourse-calendar-how-to/165536/10 "2022-02-03T18:43:49Z")

</div>

🤔 I’m sorry, i’m not sure I understand the question 😅  
I’d say the settings are set per item, that is for one calendar (which is in the specified post)

---

<div class="post-metadata">

### Author: ![Tara\_Walton](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tara_walton/32/244402_2.png) [@Tara\_Walton](https://meta.discourse.org/u/Tara_Walton)
#### Post date: [February 3, 2022, 10:03pm UTC](https://meta.discourse.org/t/discourse-calendar-how-to/165536/11 "2022-02-03T22:03:08Z")

</div>

My apologies for the confusion.  
In the settings for Discourse calendar, you see the image i previously posted.  
It requires the categoryId and postID then states the other valid settings, but not what they do in that instance.

I’m wondering if this is a case of bad help text or bad understanding of how these settings work when related to the “calendar categories” setting.

From my trials, I don’t see anything happening, but I could be wrong. 😃

---

<div class="post-metadata">

### Author: ![Benjamin\_D](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/benjamin_d/32/277831_2.png) [@Benjamin\_D](https://meta.discourse.org/u/Benjamin_D)
#### Post date: [February 3, 2022, 10:41pm UTC](https://meta.discourse.org/t/discourse-calendar-how-to/165536/12 "2022-02-03T22:41:07Z")

</div>

> [@Tara\_Walton](#):
>
> My apologies for the confusion.

Oh no worries, my english is like swiss cheese, mostly holes, hence the wondering

> [@Tara\_Walton](#):
>
> From my trials, I don’t see anything happening

I think it should work without the double quotes, for instance  
`categoryId=31;postId=4867;tzPicker=true;weekends=false`

---

<div class="post-metadata">

### Author: ![Ethsim2](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ethsim2/32/522255_2.png) [@Ethsim2](https://meta.discourse.org/u/Ethsim2)
#### Post date: [January 19, 2025, 10:00pm UTC](https://meta.discourse.org/t/discourse-calendar-how-to/165536/14 "2025-01-19T22:00:25Z")

</div>

> [@jrgong](#):
>
> In case anyone is struggling, you can take the following steps to find the `postId`

I found that you’d change

`meta.discourse.org/t/discourse-calendar-how-to/165536/6`

into

`meta.discourse.org/t/discourse-calendar-how-to/165536.json`

---

<div class="post-metadata">

### Author: ![Heliosurge](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/heliosurge/32/571810_2.png) [@Heliosurge](https://meta.discourse.org/u/Heliosurge)
#### Post date: [January 20, 2025, 7:29am UTC](https://meta.discourse.org/t/discourse-calendar-how-to/165536/15 "2025-01-20T07:29:55Z")

</div>

Agreed. I think sometimes the instructions are written from a developer’s perspective and need more step-by-step information and pictures for a layman. The calendar could maybe use a #Customization > Theme component to make the setup clearer within a topic or something.

---

<div class="post-metadata">

### Author: ![Ethsim2](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ethsim2/32/522255_2.png) [@Ethsim2](https://meta.discourse.org/u/Ethsim2)
#### Post date: [January 20, 2025, 8:33am UTC](https://meta.discourse.org/t/discourse-calendar-how-to/165536/16 "2025-01-20T08:33:00Z")

</div>

I ended up not using the About-Topic calendar, because the easy way to create an event is always 1st post of a topic and you’d be using that for calendar anyway not events.

I was able to edit 1st post of existing topics in sub-categories, then the sub-categories’ colour showed in the parent category’s displayed calendar.

Also, you mentioned theme component, which suggests adjustability; the calendar i’m talking about, the one implemented by the `Events Calendar Categories` admin setting, i would like to be able to adjust:

- The size of calendar on desktop site, the mobile site looks ok
- The day the week starts

I’m not listing too many things here because i don’t want to put people off, i imagine there were development problems that meant there needed to be different ways for a superuser to implement discourse-calendar

---

<div class="post-metadata">

### Author: ![Heliosurge](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/heliosurge/32/571810_2.png) [@Heliosurge](https://meta.discourse.org/u/Heliosurge)
#### Post date: [January 20, 2025, 8:48am UTC](https://meta.discourse.org/t/discourse-calendar-how-to/165536/17 "2025-01-20T08:48:59Z")

</div>

Well as far as I have observed haven’t seen a Calender companion TC. You might though be able to create a custom #Customization > Theme component using inspect element in your browser to identify and adjust the calender size in Desktop. Just be sure to put it in the Desktop CSS header

The Team recently released a companion plugin for Live Streams. That maybe if interest. It used Chat & Calender.

> [@Discourse Livestream](https://meta.discourse.org/t/discourse-livestream/341335):
>
> warning This plugin is now part of [Discourse Events](https://meta.discourse.org/t/discourse-calendar-and-events/97376). Please visit that topic for up-to-date information about this feature and to ask questions or share feedback. information_sourceSummary Discourse Livestream allows you to create Livestream topics that let your users join and participate in chathammer_and_wrenchRepository Link [https://github.com/discourse/discourse-livestream](https://github.com/discourse/discourse-livestream)open_bookInstall Guide [How to install plugins in Discourse](https://meta.discourse.org/t/install-plugins-in-discourse/19157)Features

---

<div class="post-metadata">

### Author: ![Ethsim2](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ethsim2/32/522255_2.png) [@Ethsim2](https://meta.discourse.org/u/Ethsim2)
#### Post date: [January 20, 2025, 9:04am UTC](https://meta.discourse.org/t/discourse-calendar-how-to/165536/18 "2025-01-20T09:04:33Z")

</div>

Good i like that plugin, not something i do often enough​😅 i’m a private forum kindda guy. Maybe one day i’ll have enough money to livestream physics revision

So much for the Per Parent Category calendar, it would be nice if #Uncategorized (potentially?) were to display a calendar on the homepage (or #General category), and merge together the events from all the other categories
