Хм, у меня в calendar categories календарь отображается над списком тем категорий, но без каких-либо событий. Кто-нибудь может воспроизвести это?
Я только что установил плагин и настроил его на проверку, и пока мой «день рождения» отображается как в календаре тем, так и в календаре категорий:
Однако существует несколько различных настроек, поэтому моя простая конфигурация может не охватывать то, как настроили свой вариант вы. Если вы предоставите мне конкретные детали, я смогу проверить их в своей тестовой среде?
Я использую базовую конфигурацию + defaultView=listNextYear
Я тоже проверил это, и у меня всё работает нормально. Просто для уверенности, что я делаю правильно… ![]()
- Создайте тему для календаря с этим кодом в первом посте:
[calendar]
[/calendar]
- Добавьте ответ в тему календаря с событием. Например:
У меня день рождения!
[date-range from=2022-08-27 to=2022-08-27 timezone="Europe/London"]
- В настройках календаря укажите, например,
categoryId=37;postId=1084;defaultView=listNextYearв разделекатегории календаря.
Это отображается выше выбранной категории, в которой размещён календарь:
Да, я делаю именно это. Странно, что у меня это не работает, хотя раньше работало.
Привет, @JammyDodger, у нас на тестовом сайте возникла та же проблема. Я выполнил ваши инструкции, но ничего не отображается.
Однако, когда я использовал плагин «События» и включил опцию категории календаря событий, а затем создал событие в этой категории, оно отобразилось без проблем.
Это интересно. Не совсем понимаю, что я делаю не так, из-за чего у меня это отображается.
В итоге у тебя получилось, @MarcP?
Я не думаю, что календарь (категория) должен отображать события, но даты (официальный плагин)
Нет, всё ещё не работает! В итоге я перестал его использовать.
@Benjamin_D, это так. Раньше это работало. Виджет календаря должен отображаться над категорией.
Похоже, мой обзор всё-таки был слишком поверхностным. Я углублюсь в детали и постараюсь понять, чего мне не хватает (и, надеюсь, найти какое-то решение
)
Вы сделали всё именно так, как и должно быть (и в прошлом это работало у меня). Вот почему я в недоумении.
Я думаю, что категоризация событий работает с плагином pavilion: Events Plugin 📅
Никогда не видел, чтобы это работало с официальным плагином календаря, в который несколько лет назад добавили некоторый функционал событий.
[calendar] предназначен для отображения [date] его темы, поэтому опция category calendar требует postId.
[event] всего сайта отображаются только в календаре маршрута upcoming-events (который также сделан с использованием JS-библиотеки fullcalendar, как и календари calendar).
edit: моя ошибка, не видел этого раньше:
Итак, если я правильно понимаю, вы пытаетесь отображать события определенной категории в календаре с помощью параметра defaultView, используя тот факт, что этот параметр принимается в опции calendar categories (но не в events calendar categories), а также ссылку: FEATURE: add events calendar on the category page (#248) · discourse/discourse-calendar@b900276 · GitHub
Если категория присутствует одновременно в
events calendar categoriesиcalendar categories, приоритет отдаетсяcalendar categories.
Хм, у меня не получается это настроить, но было бы здорово, конечно ![]()
Я действительно так не думаю. Давайте вспомним:
- официальный плагин календаря состоит из двух частей: календарь и события
- функция календаря более старая и предназначена для отображения праздников и различных дат через разметку
[date=....] - функция событий (
[event ...]) была добавлена позже и позволяет, например, подтверждать участие (она может быть включена независимо, но устанавливается вместе с плагином discourse-calendar); события отображаются в календаре, который формируется не из разметки[calendar] [/calendar]в каком-либо посте, а через специальный маршрут:/upcoming-events категории календаряпозволяют нам указывать такие параметры, как вид по умолчанию, но некатегории событий календаря; эти два механизма работают очень по-разному (насколько я понимаю)
Календарь категории для обычных дат уже существует в некоторых постах, извлекается, и затем добавляются параметры, здесь
но календарь категории событий создаётся специально для этого случая, события извлекаются по категориям и добавляются, но никакие параметры не передаются.
Подводя итог: календарь категории не предназначен для отображения событий, календарь категории событий предназначен для этого, но не поддерживает никаких параметров, доступных для календаря категории.
Не уверен, что правильно понимаю.
Раньше я добавлял события, публикуя текст и дату в теме. Это отображалось в теге [calendar] в первом сообщении этой темы.
Затем настройка, которую я показал на скриншоте, позволяла отображать этот календарь в верхней части категории. Эта настройка описывает (как видно на скриншоте): отображение календаря в верхней части категории. Он получает календарь из предоставленного вами ID темы и размещает его над предоставленным вами ID категории.
Возможно, что-то изменилось в плагине событий, но я его никогда не использовал.
По-моему, всё это не связано с плагином событий, так как я его никогда не устанавливал, и всё работало именно так, как описано выше.
События
Плагин имеет функцию «Событие», но стоит учитывать, что она находится в альфа-версии. Она работает совершенно иначе и создаёт общесайтовый календарь из записей в нескольких темах, а не календари для каждой темы отдельно. Подробнее об этом см.
Discourse Event .
Как показано здесь, события относятся к общесайтовым событиям, а календарь — к календарю, основанному на теме, о котором именно мы и говорим.
Точно. Функция событий не используется, если этот плагин не установлен. Настройки, которые я поделился, действительно показывают календарь над темой, но не элементы событий (или, чтобы избежать путаницы со событиями, назовём их элементами календаря). При этом тот же виджет календаря отображает элементы календаря в первом сообщении темы.
Надеюсь, это проясняет, о чём эта тема.
назовём их элементами календаря
![]()
ок, так почему же у вас это не работает? ![]()
на скриншоте выше, почему перед categoryId стоит X?
Х крестик — это как отключить
, чтобы я мог сохранить настройки и включить их, если когда-нибудь баг исправят, не теряя при этом свои настройки.
Почему это не работает — отличный вопрос. Даже создал новую тему с новым календарем, чтобы проверить, нет ли проблемы в «старой» теме календаря.



