WordPress AjaxでAdvanced Custom Fields(カスタムフィールド)を更新するAPIを公開(REST)

こんにちわ
最近はJavaプログラマーではなくPHP(Wordpress),Javascript,HTMLを主に使用する機会が増え、すっかりWEB系に転向している私です。

さて、Wordpressで単にホームページやブログを作るのではなく、システム基盤として使用する際に、
Ajaxでアクセス可能なカスタムフィールドを更新するAPIを作成することがありました。

結論から挙げると以下です。

function.phpに記述するコード

 

クライアント(ブラウザ側)で使用するユーティリティコード

 

上記のユーティリティを使用してサーバに更新をリクエストします。

ハマったポイント

カスタムフィールドのフィールド名だけでは更新できない
これにつきます。フィールド名(field_name)からフィールドキー(field_key)を取得してそれで更新しましょう。

ただし、フィールド名(field_name)を使ってもエラーは発生せず、
更新できたかの様に見えます。
しかも、投稿画面でフィールドを確認すると
ただしく更新値が表示されています。
ただ、get_fieldで取得しようとしても更新した値が取得できない。
という中途半端な状態になります。

これは大混乱です。

まぁこういう細かいことは忘れて結論だけ覚えてください。

カスタムフィールドの値を更新するときは「field_key」を使用してください。「field_name」は使用しないでください。

コメントを残す

メールアドレスが公開されることはありません。