Linux 软件免费装
Banner图

HappenBoard

开发者 rainbowgeek
更新时间 2026年10月23日 23:12
PHP版本: 8.2 及以上
WordPress版本: 7.1
版权: GPLv3 or later
版权网址: 版权信息

标签

booking calendar events appointments rsvp

下载

1.0 0.1.0 1.0.0 1.1.0

详情介绍:

HappenBoard is an events calendar and appointment booking plugin built for the block editor and the Site Editor. Its blocks are rendered by your server and styled by your theme, and its admin screens use the components of WordPress itself. HappenBoard is made by the team behind SEOPress and MailerPress. Events RSVPs Appointment booking Blocks and templates Search engines Moving from another plugin Import your events from The Events Calendar, Events Manager, Sugar Calendar, EventKoi, Amelia or any .ics file, with the venues, organizers, attendees and bookings the old plugin stored. The import works even if the old plugin is already deactivated. AI agents Connect Claude, ChatGPT, Cursor or any MCP client by pasting one address and signing in with your WordPress account. The agent can then find, create and update your events and bookings with your WordPress permissions. It cannot delete anything. Also included For developers

安装:

From WordPress.org
  1. In your WordPress admin, go to Plugins → Add New and search for HappenBoard.
  2. Click Install Now, then Activate.
  3. Follow the setup wizard: calendar defaults, notifications, and an optional import from another plugin.
  4. Go to HappenBoard → Events and click New event.
  5. Add the Calendar or Upcoming Events block to a page or a template.
Manual upload
  1. Download the .zip from WordPress.org.
  2. Go to Plugins → Add New → Upload Plugin, choose the .zip and click Install Now.
  3. Activate the plugin and follow the setup wizard.
Requirements

升级注意事项:

1.1.0 Events, venues and organizers get their own permissions: Authors and Contributors lose access unless a role editor gives it back. 1.0.0 First stable release. Database update: recurring events are rebuilt in your site's time zone and RSVPs get their date. Back up first. Required by HappenBoard Pro 1.0.0.

常见问题:

Does this work with classic themes?

Yes. You can add the blocks to any post, page or widget area. On a classic theme, an event page shows its date, countdown, RSVP form, venue, organizer, Add to Calendar links and categories around the event's description, and a booking type's page shows its booking form. The events archive shows the calendar and the upcoming events, and a category or tag archive shows its events, between your theme's header and footer. If your theme has its own archive-hboard_event.php or taxonomy-happenboard_category.php, HappenBoard uses it. On a block theme, HappenBoard adds block templates for event pages and archives, which you can edit in the Site Editor.

Will this conflict with other event plugins?

No. HappenBoard uses its own post type (hboard_event), meta keys (_happenboard_*), database tables (happenboard_occurrences, happenboard_attendees, happenboard_bookings, happenboard_availability_rules, happenboard_agent_log) and prefixed libraries (HappenBoard\Vendor\…), so it can run next to another event plugin. The only thing they may share is the address. Events live under /events/ by default, as in The Events Calendar, Events Manager and Sugar Calendar. You can change it under Settings → Permalinks → Event base (or with the happenboard_event_rewrite_slug filter). Tools → Site Health tells you when a page, a post type or a taxonomy uses the same address.

Does HappenBoard add Event schema (JSON-LD)?

Yes, on every event page, following Google's Event structured data documentation. If SEOPress is active and you set up an Event schema for the same post in SEOPress, HappenBoard leaves it to SEOPress so the page does not get two.

Does it support recurring events?

Yes. A repeat rule (every day, week, month or year, with exceptions) is saved in the standard iCalendar format and turned into a list of dates. Each date has its own page and its own RSVPs, and a date can be skipped. Moving one date of a series needs HappenBoard Pro.

Where do I manage attendees?

Under HappenBoard → Attendees. You can search, filter by event or date, change a status or a number of seats, move an attendee to another date and export the list to CSV.

Is HappenBoard translatable?

Yes. The text domain is happenboard, and translations are made on translate.wordpress.org. Developers can generate a fresh .pot file with npm run makepot.

Does it work with WPML or Polylang?

Yes. Events, venues, organizers and their categories and tags can be translated, through the bundled wpml-config.xml. The calendar, lists, grids and Query Loop show the events of the current language, and a translated event shows its venue and organizer in the same language. RSVP emails are sent in the language of the event the attendee registered on, and booking emails in the language of the page the booking was made on. The site's iCal feed lists the default language's events; add ?lang=fr (Polylang) to its address for another language. The translations of an event share its seats. Registrations on any translation count against one capacity, the one set on the default language's event (per date, on a recurring event). Every translation shows the same seats remaining, and an email address registered on one translation is registered on all of them. In the admin, an event's attendee list shows the attendees of all its translations, with a Language column; untick "All languages" to see one translation. Booking types are not translated: one booking type serves every language, so its availability and bookings stay in one place. Its title and description show as you wrote them, and the rest of the booking page is translated.

Does it work with page caching, a CDN or a reverse proxy?

Yes. The RSVP and booking forms contain nothing personal or time-limited, so a page cache can serve them to every visitor. Each form fetches its anti-spam timestamp when the visitor starts filling it in. For a signed-in visitor the form contains a security token, so HappenBoard asks page caches not to store that page. Behind a reverse proxy or a CDN, every request reaches WordPress from the proxy's address, so the per-address limits on RSVPs and bookings would treat all your visitors as one. Give HappenBoard the visitor's real address with the happenboard_rsvp_client_ip and happenboard_booking_client_ip filters. Behind Cloudflare, for example: add_filter( 'happenboard_rsvp_client_ip', fn( $ip ) => filter_var( $_SERVER['HTTP_CF_CONNECTING_IP'] ?? '', FILTER_VALIDATE_IP ) ?: $ip ); Add the same line for happenboard_booking_client_ip. Only trust a header that your proxy sets: if the site can also be reached directly, anyone can send that header.

How do I uninstall HappenBoard and erase all its data?

Deleting the plugin from Plugins → Installed Plugins keeps your data: events, attendees, settings, categories and tags stay in the database, so installing HappenBoard again brings everything back. To erase everything, add this line to your wp-config.php before you click Delete: define( 'HAPPENBOARD_UNINSTALL', true ); Deleting the plugin then:

  • removes every event, venue, organizer and booking type, with their data;
  • removes every event category and tag;
  • drops the tables wp_happenboard_occurrences, wp_happenboard_attendees, wp_happenboard_bookings, wp_happenboard_availability_rules and wp_happenboard_agent_log;
  • deletes the options and transients starting with happenboard_, except HappenBoard Pro's;
  • cancels the plugin's scheduled tasks, including every pending reminder;
  • deletes the plugin's per-user data (saved events, dashboard layout, dismissed guides);
  • removes HappenBoard's capabilities from every role and user.
On a multisite network this runs on every site. Afterwards you can remove the line from wp-config.php. HappenBoard Pro's data (its settings, payment keys, licence, tables and capabilities) is not part of this. Pro erases it when you delete Pro with define( 'HAPPENBOARD_PRO_UNINSTALL', true ); in wp-config.php. To erase everything, add both lines and delete both plugins.

更新日志:

1.1.0 1.0.0