メタオブジェクトを出力した際に [" 値 "] と出力されるのを直したい

Topic summary

メタオブジェクトのリスト型フィールドを出力する際、["hoge","piyo","fuga"] のように配列形式で表示される問題についての質問です。

問題の詳細:

  • Tasteテーマを使用
  • メタオブジェクトのリスト値を出力すると、不要な [" "] という装飾が付く

解決方法:
Qcoltd氏が調査し、以下の対処法を提示:

  • コードの末尾に .value を追加することで装飾を除去可能
  • 例: {{ product.metafields.custom.metaobject.value.textlist.value }}
  • これにより hogepiyo fuga のように値のみが出力される
  • 個別の値を取得する場合は [0][1][2] などのインデックスを使用

結果:
質問者は .value を追加することで問題を解決。単一テキストでは問題なく出力できるが、リスト値をそのまま出力すると装飾が付くことを確認しました。

Summarized with AI on November 19. AI used: claude-sonnet-4-5-20250929.

メタオブジェクトを出力した際に [" 値 "] と出力されるのを直したいです。

左右の [" "] という飾りが不要なのですが、表示されてしまいます。

テーマは無料 Taste を利用しています。

初歩的な質問ですが、修正箇所が分からず困っております。

興味があり調査してみましたが、

状況を把握しきれていないため見当違いな回答になっていましたら、

申し訳ございません。

私の開発ストアで試したところ、

コード編集でメタオブジェクトの値を出力するようにした際に、

リストの値を表示させようとすると、

質問者様と同様の状況になりました。

私が試した内容は下記です。

{{ product.metafields.custom.metaobject.value.textlist }}

textlistは単一テキストのリストです。

hoge

piyo

fuga

と入力してあります。

上記のコードによる出力は下記のようになりました。

["hoge","piyo","fuga"]

さて、

質問者様も同様の状況か分かりませんが、

上記から[“”]という飾りを外したい場合、

(飾りではなく、厳密には配列の区切りを意味しているのですが、ここでは飾りと表現します。)

下記のようにします。

{{ product.metafields.custom.metaobject.value.textlist.value }}

こうすると、

hogepiyofuga

のように出力されます。

しかし、

「値のリスト」を使用する多くの場合、

1つずつ値を取り出したいはずですので、

下記のようにした方が良いかもしれません。

{{ product.metafields.custom.metaobject.value.textlist.value[0] }}

こうすることで、

hoge

とだけ出力されます。

なお、

最後の[0]を[1]にすればpiyo、[2]にすればfuga

が出力されます。

参考になれば幸いです。

(キュー田辺)

1 Like
{{ product.metafields.custom.metaobject.value.textlist.value[0] }}

この方法でproductのリストの場合でも取得できますか?

キュー田辺様

ご教示いただき誠にありがとうございました!

末尾にvalueを加えることで、[" "]の飾りを外すことができました。

ご推測の通り、リストの値をそのまま出力すると飾りがついてしまいます。単一のテキストでは問題なく出力できておりました。

非常に勉強になりました。