サポート » 使い方全般 » Gutenbergのメタボックスの作成でsetMetaの使い方

  • sonic65

    (@sonic65)


    meta複数のキーに入力したく色々してみましたが、

    setMeta({
        ...meta,
      'header_image_id': mediaID,
      'header_image_url': setURL
      });

    とするとすんなり入りました。

    setMeta()の使い方などあまり情報がないのですが、この様に複数のキーを設定しても良いものなのでしょうか。

    もしこれが邪道でしたらmetaのタイプをarrayやobjectにして一括で入れるようにしたいと思っています。

    • このトピックはsonic65が7ヶ月前に変更しました。
    • このトピックはsonic65が7ヶ月前に変更しました。

    ヘルプの必要なページ: [リンクを見るにはログイン]

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • Aki Hamano

    (@wildworks)

    @sonic65 さん

    こんにちは。
    meta情報をDBに保存する場合、

    1. それぞれの情報に個別にキーを付与して、別々のフィールドとして保存する
    2. 一つのキーに配列等で情報をまとめて、一つのフィールドとして保存する

    の二つの方法があります。

    setMeta()の使い方などあまり情報がないのですが、この様に複数のキーを設定しても良いものなのでしょうか。

    →これは1.の方法でメタ情報を保存する事になりますが、複数キーを設定する事は問題ありません。
    そもそも、meta変数をスプレッド構文(...meta)で代入していますので、setMetaの引数オブジェクトはもともと複数キーが格納されているはずです。

    もしこれが邪道でしたらmetaのタイプをarrayやobjectにして一括で入れるようにしたいと思っています。

    →これは2.の方法でメタ情報を保存する事になりますが、邪道という事ではなく、どちらの方法で保存した方が設計上良いのか、という話になります。
    それぞれのmeta情報が関連性を持っていて同時に扱いたかったり、情報の数が多かったりする場合は、この方法で一つのmetaキーにまとめても良いと思います。

    トピック投稿者 sonic65

    (@sonic65)

    setMetaの情報があまりなく、海外の記事でも複数のキーを入れているサンプルとかほぼなかったので、あまり良くない方法なのかなと思ったので質問しました。

    今回はアップした画像データをmetaに入れたいので、2.の方法で行うようになるかと思います。

    ありがとうございました。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「Gutenbergのメタボックスの作成でsetMetaの使い方」には新たに返信することはできません。