| 【EC-CUBE2】複数商品・複数届け先を選ぶと「お支払方法・お届け時間等の指定」画面で、「お届け時間の指定」が空っぽになる不具合についてブログトップ | CMS関連 | APIを使って自分のInstagram投稿写真を取得する方法【Instagram Basic Display API】
Custom Field Suiteを使っている場合の、カスタムフィールドの内容登録の方法
この記事は1年以上前の記事のため、内容が古い可能性があります。
カスタムフィールドを簡単に設定できる便利なプラグイン
Custom Field Suite(カスタムフィールドスイーツ)
これでカスタムフィールドを設定している場合、普通に編集画面から内容を登録するときはもちろん問題ないのですが、独自プログラムからカスタムフィールドの内容を新規登録する場合は注意が必要です。
通常、カスタムフィールドにデータを登録する場合
add_post_meta()
update_post_meta()
を使用します。
これを使うと、確かにデータベースのwp_post_metaテーブルにデータが入るのですが、管理画面で該当記事の編集画面を開くと、データが入っていません。
かなり詰まったのですが、データベースをよくよく見てみると、「wp_cfs_values」といういかにもCustom Field Suite用のテーブルがあるじゃないですか。
要するに、これでキーとデータを紐づけているわけですね。
力技でここに紐づけ用のデータをINSERTする方法もありますが、そんなことをしなくても、ちゃんとCustom Field Suiteが関数を用意してくれています。
$post_id = (該当記事のID); $post_meta_datas = (登録したいカスタムフィールドの情報); CFS()->save( $post_meta_datas, array("ID" => $post_id) );
という形で登録する必要があります。
以下例
$post_id = 1234; $post_meta_datas = array( "nickname"=>"ダリ", "mail" => "xxxxx@xxxxxx.xxx", "url" => "https://nandani.sakura.ne.jp/" ); CFS()->save( $post_meta_datas, array("ID" => $post_id) );
参考サイト
総合管理者 | 2018年12月19日 | コメント(0) | トラックバック(0) | CMS関連
トラックバック
トラックバックURL
コメントする
※メールアドレスが公開されることはありません。