Acfとカスタム投稿の組み合わせで使用
例えば、Acfを使い、カスタム投稿に品番と価格、色、サイズなどの一覧を持たせ、その組み合わせ一覧を取得、他の固定ページで加工したり計算したい。
そんな時、組み合わせが多すぎてレコードが何百行とかになったりしたときに、データをjsonにして保存し使用する固定ページからはファイル読み込みで使ったら楽なのでは?と思って作りました。
処理の流れ post_updated からのWP_Filesystem
1 functions.php に 記事更新のタイミングで呼ばれる処理を追加
2 $post_id を取得できるので、目的とするカスタム投稿かどうか判定
3 目的のカスタム投稿なら、WP_Filesystem() の put_contents() を使ってファイルを保存する
下記のコードの例では、
目的のカスタム投稿を判定は
$target_post_ID = 100; // custom post_id
で。
ファイルへのコンテンツの出力は
$new_file_text = 'something here';
で代入。
保存先は
$path_name = get_template_directory() . '/js/test.json';
でテーマディレクトリの /js/ ディレクトリへ配置している。