説明
WaffleDB は、WordPress 用のノーコードデータベース管理プラグインです。管理画面から自由なカラム構成でカスタムテーブルを定義し、組み込みの Web インターフェースまたは REST API 経由でレコードの作成・参照・更新・削除 (CRUD) を行うことができます。
機能
- 柔軟なカラム構成でカスタムテーブルを作成
- Web インターフェースを通じた CRUD 操作 (作成、参照、更新、削除)
- ロールベースのアクセス制御 (テーブルごとに読み取り、作成、更新、削除を設定可能)
- 26種類の列タイプ: テキスト、テキストエリア、整数、浮動小数点数、メールアドレス、日付、日時、時刻、URL、画像 URL、画像アップロード、ファイルアップロード、YouTube、HTML テキスト、Markdown、JSON、UUID、リレーション、ラジオボタン、セレクト (ドロップダウン)、チェックボックス、位置情報、パスワード、範囲スライダー、カラー、住所 (Google マップリンク付き)
- フォームセット機能: カラム定義を再利用可能なテンプレートとしてまとめ、ワンクリックでテーブルに適用可能
- テーブルと行の複製
- CSV エクスポート
- 正しい HTTP ステータスコードに対応した WP REST API (
/wp-json/waffledb/v1/records/) に加え、従来型の admin-ajax API も利用可能。いずれも API トークン認証に対応 - ブロックエディター対応: テーブル選択機能を備えた「WaffleDB テーブル」ブロックと「WaffleDB レコード」ブロックを追加
- ショートコード対応:
[waffledb table_id="X"]および[waffledb_item table_id="X" item_id="Y"] - 大規模データセット向けの DataTables 連携 (1,000件以上のレコードで AJAX 表示に自動切替)
制限事項
- 1サイトあたり最大6テーブル
- 1テーブルあたり最大15カラム
ブロック
このプラグインは2個のブロックを提供します。
- WaffleDB Record Display a single WaffleDB record.
- WaffleDB Table Display a WaffleDB table with data management UI.
インストール
waffledbフォルダを/wp-content/plugins/ディレクトリにアップロードするか、WordPress のプラグイン画面から直接インストールしてください。- WordPress のプラグイン画面からプラグインを有効化してください。
- 管理メニューの WaffleDB から、最初のテーブルを作成してください。
- データ構造を定義するカラムを追加し、レコードの入力を始めましょう。
評価
このプラグインにはレビューがありません。
貢献者と開発者
変更履歴
1.10
- 正しい HTTP ステータスコードに対応した WP REST API (
/wp-json/waffledb/v1/records/{table_id}) を追加。既存の admin-ajax API と併存し、いずれも API トークン認証に対応 - 範囲スライダー、カラー、住所 (Google マップリンク付き) の列タイプを追加
- 列の一意制約と最小値、最大値のバリデーションルールを追加
- データ一覧の上に詳細検索フォームを追加。列ごとの検索条件 (テーブルごとにオプトイン) と、ブロックごとの表示モード切り替え (DataTables、プレーン HTML) に対応
- テーブルに列が定義されていない場合、レコード追加画面にメッセージを表示するよう追加
- テーブル・列の管理一覧における名前と表示名の表示順を修正
- WaffleDB についてのマニュアルページを、現在の全機能に対応する内容に更新
1.9
- フォームセット機能を追加: カラム定義 (選択肢タイプやアップロードタイプを含む) を再利用可能なテンプレートとしてまとめ、ワンクリックでテーブルに適用可能。初回インストール時にサンプルとして「商品」「配送先住所」セットを自動登録
- 位置情報型カラムタイプを追加: 緯度、経度を別々のカラムに保存し、Google マップへのリンクとして表示
- パスワード型カラムタイプを追加: 入力、表示時にマスク処理 (保存は平文)
- JSON 型および UUID 型のカラムタイプを追加
- テーブルの複製 (カラム・選択肢・権限を含む) およびレコードの複製機能を追加
- カラムごとに「一覧に表示」設定を追加し、一覧表示から特定のカラムを非表示にできるように
- テーブル設定に「すべてのデータを削除」(truncate) 機能を追加
- WaffleDB についてのマニュアルページを、現在の全機能に対応する内容に更新
- テーブルの複製やフォームセット適用時に発生していた「headers already sent」警告を修正
1.8
- チェックボックス型カラムタイプを追加 (設定可能な選択肢リストからの複数選択、ラジオボタン、セレクトとストレージ、UI を共有)
- カラムタイプ選択リストの並び順を変更: テキスト、テキストエリア、HTML テキスト、Markdown、リレーションを、セレクト、ラジオボタンより前に表示するよう調整
1.7
- メール型カラム追加時の致命的エラーを修正 (validate_data () メソッドの欠落)
- マイグレーション時の admin_init における致命的エラーを修正 (waffle_migrate から waffledb_migrate)
1.6
- HTML テキスト型カラムタイプを追加 (許可タグ: a、 font、 b、strong、i、em、span、p、br、ul、ol、li)
- カラムタイプの許可リストに mediumtext を追加し、ALTER TABLE が無言で失敗する不具合を修正
- バリデーションがレコード書き込み前に実行されるよう、カラムメタデータの挿入順序を修正
1.5
- セキュリティ強化: ショートコード・コールバックの戻り値をエスケープ処理 (WordPress が描画する WP_List_Table のカラムコールバックを含む)
- セキュリティ強化: フロントエンドの詳細画面において、レコード削除前に削除権限のチェックを追加
- セキュリティ強化: 管理画面の AJAX ハンドラーおよびフォームコントローラー全体で nonce および権限チェックを強化
- セキュリティ強化: 動的 SQL 識別子を %i プレースホルダーに変更し、識別子、型に対する厳格な許可リスト検証を追加。また、値についても prepare () によるパラメータ化を実施
- メール型カラムタイプを追加
- 有効化・マイグレーション処理内の SHOW TABLES クエリの不備 (閉じ引用符の欠落) を修正
1.2
- 浮動小数点 (double) 型カラムタイプを追加
- CSV ダウンロードが空の内容を返す不具合を修正
- CSV ダウンロードのエンコーディングを UTF-8 に修正
- API の構文エラーを修正
- コンポーネントタイプの表示名を改善
- 非推奨の load_plugin_textdomain() 呼び出しを削除 (WordPress 4.6 以降は自動読み込みのため)
- コードおよびディレクトリ構造のリファクタリング
1.1
- レビュー後の修正
1.0
リリース日: 2024年3月30日
- 初回リリース