캘린더 생성 및 관리

:bookmark: 이 가이드는 Calendar(및 Event) 플러그인을 사용하여 Discourse에서 달력을 생성하고 관리하는 방법을 설명합니다.

:person_raising_hand: 필요한 사용자 권한: 모든 사용자

달력은 커뮤니티 내에서 이벤트를 조직하고 표시할 수 있는 Discourse의 강력한 기능입니다. 이 가이드에서는 달력을 생성하고, 이벤트를 추가하며, 이를 효과적으로 관리하는 과정을 안내해 드립니다.

요약

  • Calendar 플러그인 활성화
  • 주제(Topic) 또는 카테고리에서 달력 생성
  • 달력에 이벤트 추가
  • 달력 옵션 및 설정 관리
  • 휴일 달력 기능 사용

Calendar 플러그인 활성화

달력을 생성하기 전에 Discourse 인스턴스에서 “Calendar (and Event)” 플러그인이 활성화되어 있는지 확인하십시오. 플러그인 활성화 및 관련 설정에 대한 자세한 내용은 Discourse Calendar and Event 플러그인 문서를 참조하십시오.

달력 생성

주제(Topic) 달력

주제에 달력을 내장하려면:

  1. 새 주제를 생성하거나 기존 주제의 첫 번째 게시물을 편집합니다.

  2. 다음 코드를 각기 다른 줄에 추가합니다:

    [calendar]
    [/calendar]
    
  3. 게시물을 게시하거나 업데이트합니다.


:information_source: 주 중 첫 번째 날짜는 기본적으로 월요일이지만, “calendar first day of week” 사이트 설정(옵션: 토요일, 일요일, 월요일)을 사용하여 설정할 수 있습니다.

카테고리 달력

카테고리 전체 달력을 생성하려면:

  1. /admin/site_settings/category/discourse_calendar?filter=plugin=discourse-calendar로 이동합니다.

  2. “calendar categories” 설정에 다음 형식으로 항목을 추가합니다:

    categoryId=123;tzPicker;defaultView=month
    
    • 123을(를) 카테고리 ID로 대체합니다(카테고리 URL에서 확인할 수 있음).
  3. 카테고리 ID를 “events calendar categories” 설정에 추가합니다.

  4. (선택 사항) "discourse post event allowed on groups"를 설정하여 어떤 그룹이 이벤트를 추가할 수 있는지를 제어합니다.

달력에 항목 추가

주제(Topic) 달력

주제 달력에 이벤트를 추가하려면:

  1. 달력이 포함된 주제에 답글을 작성합니다.
  2. 작성기 도구 모음의 ⊕ 옵션 메뉴를 열고 “날짜/시간 삽입” 기능을 사용하여 날짜 또는 날짜 범위를 추가합니다.
  3. 날짜 위에 설명을 추가합니다.
  4. 답글을 제출합니다.

주제를 새로 고침한 후 이벤트가 달력에 표시됩니다.

카테고리 달력

카테고리 달력에 이벤트를 추가하려면:

  1. 해당 카테고리에서 새 주제를 생성합니다.
  2. 작성기 도구 모음의 ⊕ 옵션 메뉴를 열고 "이벤트 생성"을 선택합니다.
  3. 이벤트 세부 정보를 입력하고 게시합니다.

이벤트가 카테고리 달력에 표시됩니다.

달력 옵션

다양한 옵션을 사용하여 달력을 사용자 정의할 수 있습니다:

옵션 예시 설명
주말 숨기기 weekends="false" 토요일과 일요일을 숨깁니다
특정 요일 숨기기 hiddenDays="1,2" 월요일과 화요일을 숨깁니다 (일요일~토요일은 0-6 사용)
기본 보기 설정 defaultView="month" 옵션: month, week, listNextYear
시간대 무시 fullDay="true" 모든 이벤트를 종일 이벤트로 취급합니다

사용 예시:

[calendar weekends="false" hiddenDays="1,2" defaultView="week" fullDay="true"]
[/calendar]

달력 항목 제거

달력 항목은 다음 방법으로 제거할 수 있습니다:

  • 만료된 달력 항목은 “delete expired event posts after” 설정을 사용하여 자동으로 제거할 수 있습니다.
  • 주제 타이머를 사용하여 답글을 자동 삭제합니다.
  • 필요할 때 게시물을 수동으로 삭제합니다.

휴일 달력

휴일 달력은 사이트 스태프의 휴가를 관리하기 위한 특수 기능입니다:

  1. 첫 번째 게시물에 달력이 포함된 주제를 생성합니다.
  2. "holiday calendar topic id"를 이 주제의 ID로 설정합니다.
  3. 이 주제에 대한 답글은 게시한 사용자의 휴가 기간으로 처리됩니다.
  4. 달력에 표시되려면 각 답글에는 작성기 ⊕ 옵션 메뉴의 “날짜/시간 삽입” 기능을 통해 추가된 날짜/시간 타임스탬프가 포함되어야 합니다.
  5. 휴가 항목은 자동으로 무작위로 색상 지정됩니다.
  6. 휴가 중인 사용자의 사용자 카드 및 @멘션 옆에 이모지(기본값: :date:)가 표시됩니다.
  7. (선택 사항) "calendar automatic holidays enabled"를 활성화하여 사용자의 로케일별 공휴일을 포함할 수 있습니다.

자주 묻는 질문(FAQ)

Q: 왜 일부 이벤트가 여러 날에 걸쳐 표시되는 것 같나요?
A: 달력은 항상 UTC로 표시됩니다. 시간대 차이를 조정하려면 “all day event start time” 및 “all day event end time” 설정을 사용하십시오.

Q: 달력 항목의 색상을 제어할 수 있나요?
A: 카테고리 달력과 예정된 이벤트의 경우, “map events to color” 사이트 설정을 사용하여 태그 또는 카테고리별로 색상을 지정할 수 있습니다. 휴일 달력 항목은 자동으로 무작위로 색상 지정되며 사용자 정의할 수 없습니다.

Q: 과거 이벤트를 목록 보기로 표시하는 방법은 무엇인가요?
A: 현재 defaultView=listNextYear를 사용할 때 초기 보기가 비어 있는 버그가 있습니다. 임시 조치로, 사용자는 월간 보기로 전환한 후 한 달 전으로 돌아가고, 다시 목록 보기로 전환하여 과거 이벤트를 확인해야 합니다.

추가 자료

11개의 좋아요

I have a hard time understanding how to create a calendar so that it displays in a category, and what to do to fill it once it’s there. For topics, it is quite straightforward, but the category case is more obscure. Can someone give an example?

Create a Category Calendar

The difference between a topic calendar and a category calendar is that the former uses add date from a specific topic response, and displays the calendar in the topic itself, while the latter uses create event in any topic of the configured category, and displays the events calendar in the category.

1. Enable the calendar plugin

In /admin/site_settings/category/discourse_calendar?filter=plugin%3Adiscourse-calendarcalendar categories:

You want something like: categoryId=123;postId=4949;tzPicker;defaultView=month

  • categoryId is easy to find: it’s the number in the URL when you click the #category

  • postId can be found like this: go to the category description (the “About category” pinned topic) and append .json to the URL: the postId is at the beginning of the JSON file.

  • Review the discourse-calendar documentation for available options.

  • Add the category (numbered 123 in our example) to events calendar categories

You may want to set discourse post event allowed on groups to include the groups you want to be able to add events.

2. Create an event

You can create a new topic in category 123 and create event (from the gear button).

The event will then appear on the category calendar.

:tada:

2개의 좋아요

Is there any way to display not the upcoming events, but the ones in the past year? We would like to make use of the plugin for our journal section and list all past entries in the first post.

When using this snippet below, the event list is initially empty. Only when going back to monthly view, going one month back and going back to list view, it works

[calendar defaultView=listNextYear fullDay=true]
[/calendar]

See bug in action:
CleanShot 2024-05-07 at 14.08.49 2

6개의 좋아요

I am interested in this function as well.

I wonder if there might also be some data explorer scripts to go along calender searching

3개의 좋아요

When someone in my community posts a calendar event, then an Admin edits said event, why is then the original poster can no longer edit?

This is a huge deal impacting 100s of people

Make clear that for now only the Topic calendar starts at Monday and that the Category calendar starts at Sunday instead.

Would love to have this admin configurable, as now each one shows the calendar differently…

3개의 좋아요

Uh-huh. That makes sense, because I didn’t realize–

For holidays to be visible in the holiday calendar it is worth mentioning that the reply must content a timestamp that you add from the editors menu.
Also as it was previously state the id of the post is found by adding .json to the url of the post. I think this should be added to the documentation here as if categories have their id in the url the topic url id will confuse people as its number may be close but not similar to the real topic id.

Thank you for this guide anyway, there is a lot to cover because there are many features which is cool, great job devs !

Ahh, the AI rewrite has added some ‘event’ terminology in. Ideally, this term would be avoided in the ‘Calendar’ half of the docs so as not to create ambiguity with the addtional ‘Event’ feature of the plugin.

1개의 좋아요

I want to ask that my discourse don’t have calendar and gear button after I enabled the plugin, is there something wrong?

1개의 좋아요

The gear icon was change to a while ago. I think insert date was moved into that more menu (I think it also uses the icon now).

Definitely a very good point. Looks like this documentation needs an update (and there are probably also other topics that still refer to the gear icon).

1개의 좋아요

Thanks for the response,and then I realized another error that related to this. I have this icon, but it’s bigger and at the wrong spot, blocking, as you can see. It’s normal on the phone, but not on the desktop. By the way, no calendar but events in the list. What can I do :pleading_face:

Does safe mode fix the position of the plus icon?

Which calendar button do you expect?

That one is now

I have this insert button, then how can I post a calendar? I tried code [calendar], that’s working, but is date/time including calendar?

For the big button, I tried safe mode, and it’s still that way. Rebuild app is not working, can I hope for the next version update would fix this?:relieved_face: Or there is something I can do, except doing the whole thing all over again :rofl:

:man_zombie:

이 설정이 유력한 원인으로 보입니다:

image

defaultView="listNextYear"로 설정했는데도 연도 목록 보기가 아닌 월 보기가 표시되는 이유는 무엇인가요?

2개의 좋아요

예제를 테스트해 보았습니다


hiddenDaysdefaultView도 작동하지 않는 것 같습니다(fullDay는 테스트하지 않았습니다). 어떤 날짜 열도 숨겨지지 않았고, 기본 뷰는 여전히 월 단위입니다(참고로, 대비가 낮아 읽기가 어렵습니다).

여기서 무언가 깨진 것 같습니다.

1개의 좋아요