大まかな手順
上記のコードを書くと下記のようになっていると思います。
ブロック制御(定義)
ブロックとは、前述で実装したようなセクションパーツを特定のコンテンツ内のみで、柔軟に扱えるようにした固有のコンテンツパーツになります。
▶︎ よくあるカードコンポーネントのような複数の要素を持ち合わせたパーツを作る際に有用です。
▶︎ 同じコンテンツ同士でも内容違いのものをそれぞれ出力したりする際に有用です。
- settings 属性に続き、新たに blocks 属性を追記します。
- blocksにはsettingsと同様に、 type 、 name 、 settings を記述します。
- type : settings の時とは違い、任意の文字列を指定することができます。
- Liquid 内でブロックタイプ属性を元に条件判定を行うときなどに有用です。
- settings と同じ要領で内容を書きます。(今回は画像を出力する際に使う image_picker と text タイプを使用しました。)
上記のコードによって、カスタマイズ画面にて、セクションの中にさらにコンテンツを追加できるようなUIが見られるようになったかと思います。
▶︎ 「画像を追加」を選択すると、新たに「画像」ブロックを追加することができるようになります。ブロック制御(出力)
- ブロックで設定した内容は section.blocks 配列にて個々の値が入るため、配列を展開して、値を出力していく作業が必要になります。
Liquidではfor文を使って値を展開することができるので、その方法を使います。
単一の値を展開できたら、 block.settings.id名 で取り出したい値を出力できます。
- 今回のように画像を扱う際には src値の後ろに img_url という感じにサイズの指定をする必要があるので注意です。
もし値が空の場合にそのタグ自体を出力しないようにしたいため、if文でその値が入っていた場合のみタグを出力するようにしています。
※画像は実装イメージです。
※CSSは今回内容とは逸れるので、詳細は割愛させていただきます。schemaタグにある presets 属性では、他にも下記のような使い方ができます。
- settings : settings 属性で定義したidの値のデフォルト値を設定できます。
- settings 属性で指定したidと同一のものを指定します。
- type には blocks 属性で指定した: id と同一の値を設定します。
- 上記の例では、上の動的セクションを追加した際にデフォルトで3つのブロックが展開された状態で表示されるということになります。
settings等で出てきた type キーは今回使用した text 、 image_picker 以外にもたくさんの種類があります。詳しくはこちら
大まかな手順
上記のコードを書くと下記のようになっていると思います。
ブロック制御(定義)
ブロックとは、前述で実装したようなセクションパーツを特定のコンテンツ内のみで、柔軟に扱えるようにした固有のコンテンツパーツになります。
▶︎ よくあるカードコンポーネントのような複数の要素を持ち合わせたパーツを作る際に有用です。
▶︎ 同じコンテンツ同士でも内容違いのものをそれぞれ出力したりする際に有用です。- settings 属性に続き、新たに blocks 属性を追記します。
- blocksにはsettingsと同様に、 type 、 name 、 settings を記述します。
- type : settings の時とは違い、任意の文字列を指定することができます。
- Liquid 内でブロックタイプ属性を元に条件判定を行うときなどに有用です。
- settings と同じ要領で内容を書きます。(今回は画像を出力する際に使う image_picker と text タイプを使用しました。)
上記のコードによって、カスタマイズ画面にて、セクションの中にさらにコンテンツを追加できるようなUIが見られるようになったかと思います。
▶︎ 「画像を追加」を選択すると、新たに「画像」ブロックを追加することができるようになります。ブロック制御(出力)
- ブロックで設定した内容は section.blocks 配列にて個々の値が入るため、配列を展開して、値を出力していく作業が必要になります。
Liquidではfor文を使って値を展開することができるので、その方法を使います。
単一の値を展開できたら、 block.settings.id名 で取り出したい値を出力できます。
- 今回のように画像を扱う際には src値の後ろに img_url という感じにサイズの指定をする必要があるので注意です。
もし値が空の場合にそのタグ自体を出力しないようにしたいため、if文でその値が入っていた場合のみタグを出力するようにしています。
※画像は実装イメージです。
※CSSは今回内容とは逸れるので、詳細は割愛させていただきます。schemaタグにある presets 属性では、他にも下記のような使い方ができます。
- settings : settings 属性で定義したidの値のデフォルト値を設定できます。
- settings 属性で指定したidと同一のものを指定します。
- type には blocks 属性で指定した: id と同一の値を設定します。
- 上記の例では、上の動的セクションを追加した際にデフォルトで3つのブロックが展開された状態で表示されるということになります。
settings等で出てきた type キーは今回使用した text 、 買値の定義 image_picker 以外にもたくさんの種類があります。詳しくはこちら
大まかな手順
上記のコードを書くと下記のようになっていると思います。
ブロック制御(定義)
ブロックとは、前述で実装したようなセクションパーツを特定のコンテンツ内のみで、柔軟に扱えるようにした固有のコンテンツパーツになります。
▶︎ よくあるカードコンポーネントのような複数の要素を持ち合わせたパーツを作る際に有用です。
▶︎ 同じコンテンツ同士でも内容違いのものをそれぞれ出力したりする際に有用です。- settings 属性に続き、新たに blocks 属性を追記します。
- blocksにはsettingsと同様に、 type 、 name 、 settings を記述します。
- type : settings の時とは違い、任意の文字列を指定することができます。
-
買値の定義
- Liquid 内でブロックタイプ属性を元に条件判定を行うときなどに有用です。
- settings と同じ要領で内容を書きます。(今回は画像を出力する際に使う image_picker と text タイプを使用しました。)
上記のコードによって、カスタマイズ画面にて、セクションの中にさらにコンテンツを追加できるようなUIが見られるようになったかと思います。
▶︎ 「画像を追加」を選択すると、新たに「画像」ブロックを追加することができるようになります。ブロック制御(出力)
- ブロックで設定した内容は 買値の定義 section.blocks 配列にて個々の値が入るため、配列を展開して、値を出力していく作業が必要になります。
Liquidではfor文を使って値を展開することができるので、その方法を使います。
単一の値を展開できたら、 block.settings.id名 で取り出したい値を出力できます。
- 今回のように画像を扱う際には src値の後ろに img_url という感じにサイズの指定をする必要があるので注意です。
もし値が空の場合にそのタグ自体を出力しないようにしたいため、if文でその値が入っていた場合のみタグを出力するようにしています。
※画像は実装イメージです。
※CSSは今回内容とは逸れるので、詳細は割愛させていただきます。schemaタグにある presets 属性では、他にも下記のような使い方ができます。
- settings : settings 属性で定義したidの値のデフォルト値を設定できます。
- settings 属性で指定したidと同一のものを指定します。
-
買値の定義
- type には blocks 属性で指定した: id 買値の定義 と同一の値を設定します。
- 上記の例では、上の動的セクションを追加した際にデフォルトで3つのブロックが展開された状態で表示されるということになります。
settings等で出てきた type キーは今回使用した text 、 image_picker 以外にもたくさんの種類があります。詳しくはこちら
大まかな手順
上記のコードを書くと下記のようになっていると思います。
ブロック制御(定義)
ブロックとは、前述で実装したようなセクションパーツを特定のコンテンツ内のみで、柔軟に扱えるようにした固有のコンテンツパーツになります。
▶︎ よくあるカードコンポーネントのような複数の要素を持ち合わせたパーツを作る際に有用です。
▶︎ 同じコンテンツ同士でも内容違いのものをそれぞれ出力したりする際に有用です。- settings 属性に続き、新たに blocks 属性を追記します。
- blocksにはsettingsと同様に、 type 、 name 、 settings を記述します。
- type : settings の時とは違い、任意の文字列を指定することができます。
- Liquid 内でブロックタイプ属性を元に条件判定を行うときなどに有用です。
- settings と同じ要領で内容を書きます。(今回は画像を出力する際に使う image_picker と text タイプを使用しました。)
上記のコードによって、カスタマイズ画面にて、セクションの中にさらにコンテンツを追加できるようなUIが見られるようになったかと思います。
▶︎ 「画像を追加」を選択すると、新たに「画像」ブロックを追加することができるようになります。ブロック制御(出力)
- ブロックで設定した内容は section.blocks 配列にて個々の値が入るため、配列を展開して、値を出力していく作業が必要になります。
Liquidではfor文を使って値を展開することができるので、その方法を使います。
単一の値を展開できたら、 block.settings.id名 で取り出したい値を出力できます。
- 今回のように画像を扱う際には src値の後ろに img_url という感じにサイズの指定をする必要があるので注意です。
もし値が空の場合にそのタグ自体を出力しないようにしたいため、if文でその値が入っていた場合のみタグを出力するようにしています。
※画像は実装イメージです。
※CSSは今回内容とは逸れるので、詳細は割愛させていただきます。schemaタグにある presets 属性では、他にも下記のような使い方ができます。
- settings : settings 属性で定義したidの値のデフォルト値を設定できます。
- settings 属性で指定したidと同一のものを指定します。
- type には blocks 属性で指定した: id と同一の値を設定します。
- 上記の例では、上の動的セクションを追加した際にデフォルトで3つのブロックが展開された状態で表示されるということになります。
settings等で出てきた type キーは今回使用した text 、 image_picker 以外にもたくさんの種類があります。詳しくはこちら
関連記事
- type : settings の時とは違い、任意の文字列を指定することができます。
- blocksにはsettingsと同様に、 type 、 name 、 settings を記述します。
- type : settings の時とは違い、任意の文字列を指定することができます。
- blocksにはsettingsと同様に、 type 、 name 、 settings を記述します。
- type : settings の時とは違い、任意の文字列を指定することができます。
- blocksにはsettingsと同様に、 type 、 name 、 settings を記述します。
- type : settings の時とは違い、任意の文字列を指定することができます。
- blocksにはsettingsと同様に、 type 、 name 、 settings を記述します。
コメント