Install
This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.
Install straight from GitHub with WP-CLI:
wp plugin install https://github.com/stein2nd/s2j-webinar/archive/refs/heads/main.zipGatherPress のイベント編集画面から Webinar を作成・更新する WordPress プラグインです。判断の正は S2J Webinar Service にあります。
Installation {#installation}
- GatherPress を有効化します (wp.org 版では GatherPress Alpha が必要な場合があります)。
- 本プラグインを
wp-content/plugins/s2j-webinar/に配置し、Plugins 画面で有効化します (リリース zip またはgit clone)。 - Settings → S2J Webinar で GatherPress / 連携状態を確認します。
WordPress プラグインディレクトリ (wp.org) への掲載を予定しています。掲載後は Plugins → Add New からのインストールも可能になります。
任意コンパニオン (本プラグイン有効化が前提):
| プラグイン | 用途 |
|---|---|
| S2J Webinar Source QR | ソース別 registration URL + QR PNG |
| S2J Webinar Survey | ウェビナー後アンケート |
Settings → S2J Webinar に、上記コンパニオンのインストール / 有効化案内が表示されます (両方有効のときは非表示)。
仕様
確定仕様の索引は docs/specs.md です。大きな改訂案は docs_mod/ で起草します。
依存
- PHP v8.3+、WordPress v6.3+ (WordPress 動作環境)
- GatherPress (フォーク可。本プラグインは Slot のみ使用)
- Composer:
s2j/webinar-service(Packagist の名前だけ。repositoriesに VCS / パスは書かない)
Contributing
ウェビナープロバイダ (初版と拡張)
- 初版 (v0.0.1) で接続・同期の対象とするのは、Zoom 開発者向け API を利用する Zoom のみです。サイト設定の Webinar provider 表示と UI 文言の
%sはWebinarProviderに集約しています。 - 下記のプラットフォーム向けアダプタ (OAuth / Webhook / HTTP 実行と、必要なら Webinar Service 側の拡張) は、コントリビューターによる設計・実装を歓迎 します。着手前に Issue または Discussion で方針を共有してください。
境界とキー命名の正本は docs/specs.md および docs/plugin_spec.md です。
開発
composer install
npm install
npm run lint:docs
npm run build:production # dist/ (管理画面・ブロックエディター JS)
npm run dist # release/s2j-webinar-<version>.zip
composer test
npm run makepot # languages/s2j-webinar.pot
npm run makei18n # .mo + JED (Gutenberg サイドバー翻訳に JED 必須)
日本語 (Gutenberg): makepot のあと wp i18n update-po languages/s2j-webinar.pot languages/s2j-webinar-ja.po で PO をそろえ、msgstr を埋めてから npm run makei18n。空 msgstr は JED に載りません (admin_ui_spec.md、wp-plugin-spec §2.3)。補助: tools/i18n/fill-empty-msgstr.php。
WP-CLI と PHP 8.5
makepot など WP-CLI 経由のコマンドでは、phar に同梱された依存ライブラリ 由来の PHP Deprecated が PHP v8.5環境で出ることがあります。POT 生成は通常どおり成功し、本プラグインのコードが原因ではありません。上流は WP-CLI の PHP 8.5 互換 で対応中です。警告を減らすには wp cli update --nightly など CLI の更新を検討してください。
テスト (3段階)
| 段階 | コマンド / 参照 |
|---|---|
| 1: Local 結合 | プラグインルートで WP_PATH='<WordPress public>' npm run test:smoke:local — docs/test-results.md |
| 2: WordPress Studio | GatherPress 必須。studio/smoke-test-blueprint.json — studio/README.md |
| 3a: PHPUnit (unit) | composer test または npm run test:unit:php:unit-only |
| 3b: PHPUnit (integration) | .env.tests 設定後 npm run test:unit:php:local (MySQL + 初回 svn)。任意: npm run test:unit:php (wp-env) |
readme.txt は textlint 対象外 (.textlintignore) です。