plugin-icon

Pfadiheime

Gutenberg blocks for the Pfadiheim-Verzeichnis. Ships with a calendar embed block; more blocks can be added.
版本
1.0.3
最后更新
Aug 2, 2026

This plugin provides Gutenberg blocks for the Pfadiheim-Verzeichnis. Each block lives in its own folder under build/ and is auto-registered.

Calendar block

Embeds a calendar as an iframe. Each calendar is identified by an ID that is inserted into a URL template. Place it with the “Calendar” block or the [pfadiheime_calendar] shortcode, and set the locale, month count and iframe size in the block sidebar (or as shortcode attributes).

Source Code

The source code for this plugin is publicly available at: https://github.com/diegosteiner/pfadiheime-wp-plugin/

Configuration

The URL template is read from the PFADIHEIME_CALENDAR_TEMPLATE_URL environment variable. When unset, it defaults to:

https://pfadiheime.ch/{locale}/cottages/{id}/occupancies/calendar?months={months}

Placeholders replaced when building the iframe URL:

  • {id} — the calendar ID.
  • {locale} — the chosen locale (de, fr or it).
  • {months} — the number of months to display.

Calendar shortcode

[pfadiheime_calendar id="123" locale="de" months="12" width="100%" height="600"]
  • id — the calendar ID (required).
  • localede, fr or it. Invalid values fall back to de. Default de.
  • months — number of months to display (integer, minimum 1). Default 12.
  • width — CSS width, e.g. 100% or 800. Default 100%.
  • height — CSS height, e.g. 600 or 75vh. Default 600.

Build

The plugin uses the official WordPress scripts to build the minified javascript. Run npm build to build what needs to be built into the dist/ folder.

Adding a new block

Create a folder under src/<block-name>/ with its own block.json (and a render.php for dynamic blocks). Run npm run build; the plugin auto-registers every block found in build/. Note: build/ is generated (not committed), so run npm install && npm run build after checkout.

免费基于付费套餐
通过安装,您同意 WordPress.com 服务条款第三方插件条款
目前已测试版本
WordPress 7.0.2
这个插件是可用的下载,适用于您的站点。