FileMaker Data API を WordPress に組み込む
さくらインターネットの「WinVPS」または「レンタルサーバー」で FileMaker Data API を活用する方法を解説します。
1. FileMaker Data API とは?
FileMaker Data API は、Claris FileMaker Server 上のデータベースに対して、HTTPS 経由でデータを取得・更新できる REST API です。
WordPress の固定ページと組み合わせることで、動的なデータ表示が可能になります。
FileMaker Data API 呼び出しの処理の流れ

▲ FileMaker Data API のリクエスト処理フロー
- REST API クライアント: ユーザーのリクエストが発生し、HTTPS (ポート 443) を介して API リクエストが送信される。
- Web サーバー: API リクエストを受け取り、FileMaker Web サーバーモジュールを通じて FileMaker Data API にリクエストを転送する。
- FileMaker Data API エンジン: API リクエストの内容 (URL と JSON データ) を解釈し、データベースサーバーが処理できる形に変換する。
- データベースサーバー: FileMaker Server 内のデータベースにリクエストされたデータを問い合わせ、API エンジンにレスポンスを返す。
- FileMaker Data API エンジン: データベースサーバーから受け取ったデータを JSON 形式に変換し、HTTPS 応答として Web サーバーに送る。
- Web サーバー: 受け取ったデータを REST API クライアントに返し、リクエストが完了する。
FileMaker Data API で利用されるポート:
- ポート 443: REST API クライアント ⇔ Web サーバー (HTTPS 通信)
- ポート 3000 / 8989: Web サーバー ⇔ FileMaker Data API エンジン
- ポート 5003: FileMaker データベースサーバー (データリクエスト処理)
2. さくらインターネット WinVPS での導入
① FileMaker Server をインストール
Windows Server 上に FileMaker Server をインストールし、Data API を有効化します。
② WinVPS に PHP 環境をセットアップ
WinVPS に XAMPP や IIS を導入し、PHP を利用できる環境を整えます。
③ WordPress で API 接続
次のコードを functions.php に追加して FileMaker Data API に接続します。
function get_filemaker_data() {
$url = "https://your-filemaker-server.com/fmi/data/v1/databases/YourDB/layouts/YourLayout/records";
$headers = array("Authorization: Bearer your-token", "Content-Type: application/json");
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec($ch);
curl_close($ch);
return json_decode($response, true);
}
3. さくらのレンタルサーバーでの導入
① PHP で FileMaker Data API に接続
レンタルサーバーは Windows 環境と異なり、Apache + PHP のみで運用されます。
② API からデータを取得
次のコードを WordPress の固定ページで実行すると、データを取得できます。
<?php
$url = "https://your-filemaker-server.com/fmi/data/v1/databases/YourDB/layouts/YourLayout/records";
$headers = array("Authorization: Bearer your-token", "Content-Type: application/json");
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec($ch);
curl_close($ch);
$data = json_decode($response, true);
echo json_encode($data, JSON_PRETTY_PRINT);
?>
記事内に [filemaker_data]
を入れると、FileMaker のデータが表示されます。