Shopify Web制作 コーディング

【Shopify】アプリ不要!管理画面からノーコードで「ご利用ガイド」を構築するマルチブロック・セクションの全貌

Shopifyストアを運営していて、こんな壁にぶつかったことはありませんか?

「利用可能な支払い方法が増えたけれど、ロゴ画像を更新するのが面倒」
「ネットで拾ったロゴ画像を並べると、サイズがバラバラで素人感が出てしまう」
「かといって、支払いロゴを表示するためだけにアプリを入れるのは月額費用がもったいない……」

先日、あるストアオーナー様から「ご利用ガイドに、最新の決済ロゴ(クレカ・スマホ決済・コンビニ)を、美しく、かつ簡単に管理できる形で並べたい」という切実なご相談をいただきました。

求められた要件は、非常にシビアで実践的なものでした。

  • 「画像加工の手間をゼロにしたい」(Shopifyのシステムから自動でロゴを呼び出す)
  • 「PCは6列、スマホは3列で綺麗に整列させたい」(デバイスごとの最適化)
  • 「PayPayやコンビニ決済、Apple Payにも対応させたい」(国内主要決済の網羅)
  • 「エンジニアの手を借りず、管理画面からキーワードを打つだけでロゴを入れ替えたい」

この要望をすべて叶え、画像制作の手間をゼロにしながら、ストアの「信頼感」を劇的に向上させるためのカスタマイズコードを開発しました。本記事でその全容を公開します。

1. このカスタマイズで得られる「3つの効果」

この支払いロゴセクションを導入することで、単なる「情報の羅列」以上のメリットが得られます。

  • 一瞬で伝わる「信頼感」:Shopify純正のSVGロゴ(ベクターデータ)を使用するため、拡大してもボケず、サイズも完璧に統一されます。この整列美がストアのプロフェッショナルな印象を作ります。
  • メンテナンスの自動化:新しい決済を導入した際、画像を編集してアップロードし直す必要はありません。管理画面で単語を一つ追加するだけで、即座に公式サイトのロゴが反映されます。
  • ユーザーの安心感向上:決済画面(チェックアウト)と同じアイコンをご利用ガイドやフッター近く(フッターカスタムは今回の記事には入れていません)に表示させることで、お客様の支払いに対する不安を払拭します。

2. 実装手順:5分で終わる3ステップ

ステップ1:新しいセクションの作成

  1. Shopify管理画面から [オンラインストア] > [テーマ] > [コードを編集] を開きます。
  2. 左側のメニューの [Sections] フォルダにある 「新しいセクションを追加する」 をクリック。
  3. ファイル名を "custom-payment-logos.liquid" などと入力して作成します。

ステップ2:汎用テンプレートコードの貼り付け

作成したファイルに、以下のコードをコピー&ペーストして保存してください。
※idによってロゴが表示されない場合、SVGコードを用意するケースがあるのでご注意下さい。

{% comment %}
  Shopify 万能ご利用ガイド・セクション
  - ロゴデータ内蔵により、決済設定の有無に関わらず確実に表示
  - マルチブロック設計でページを自由に構成
{% endcomment %}

<style>
  .guide-container { 
    max-width: 1200px; 
    margin: 0 auto; 
    padding: 2rem 1.5rem; 
  }
  .guide-title-h3 { 
    background: #363636; 
    color: #fff; 
    padding: 12px 20px; 
    margin: 30px 0 10px 0; 
    font-size: 23px; 
    font-weight: normal; 
  }
  .guide-title-h4 { 
    background: #efefef; 
    color: #363636; 
    padding: 10px 15px; 
    margin: 15px 0 10px 0; 
    font-size: 16px; 
    font-weight: normal; 
    border-left: 5px solid #363636; 
  }
  .guide-text { 
    padding: 5px 15px; 
    line-height: 1.6; 
  }
  .guide-payment-grid { 
    display: flex; 
    flex-wrap: wrap; 
    gap: 15px; 
    margin: 20px 0; 
  }
  .guide-payment-icon { 
    width: calc((100% - (15px * 5)) / 6); 
    min-width: 50px; 
  }
  .guide-payment-icon svg { 
    width: 100%; 
    height: auto; 
    display: block; 
  }
  .guide-image-box img { 
    max-width: 100%; 
    height: auto; 
    display: block; 
    margin: 10px 0; 
  }

  @media screen and (max-width: 749px) {
    .guide-payment-icon { 
      width: calc((100% - (15px * 2)) / 3); 
    }
  }
</style>

<div class="guide-section-v2" id="guide-{{ section.id }}">
  <div class="guide-container">
    {% for block in section.blocks %}
      <div class="guide-item" {{ block.shopify_attributes }}>
        {% case block.type %}
          {% when 'title' %}
            <h3 class="guide-title-h3">{{ block.settings.title }}</h3>

          {% when 'subtitle' %}
            <h4 class="guide-title-h4">{{ block.settings.subtitle }}</h4>

          {% when 'paragraph' %}
            <div class="guide-text">{{ block.settings.paragraph }}</div>
          
          {% when 'payment_methods' %}
            <div class="guide-payment-grid">
              {% assign payment_items = block.settings.payment_list | remove: ' ' | split: ',' %}
              {%- for type in payment_items -%}
                <div class="guide-payment-icon">
                  {%- case type -%}
                    {%- when 'applepay' -%}
                      {{ 'apple_pay' | payment_type_svg_tag }}
                    {%- when 'googlepay' -%}
                      {{ 'google_pay' | payment_type_svg_tag }}
                    {%- else -%}
                      {{ type | payment_type_svg_tag }}
                  {%- endcase -%}
                </div>
              {%- endfor -%}
            </div>

          {% when 'image' %}
            <div class="guide-image-box">
              {% if block.settings.image != blank %}
                <img 
                  src="{{ block.settings.image | image_url }}" 
                  alt="{{ block.settings.image.alt }}" 
                  loading="lazy" 
                  width="{{ block.settings.image.width }}" 
                  height="{{ block.settings.image.height }}"
                >
              {% endif %}
            </div>
        {% endcase %}
      </div>
    {% endfor %}
  </div>
</div>

{% schema %}
{
  "name": "万能ご利用ガイド",
  "blocks": [
    { 
      "type": "title", 
      "name": "大見出し", 
      "settings": [
        { "type": "text", "id": "title", "label": "タイトル", "default": "タイトル" }
      ] 
    },
    { 
      "type": "subtitle", 
      "name": "小見出し", 
      "settings": [
        { "type": "text", "id": "subtitle", "label": "サブタイトル", "default": "サブタイトル" }
      ] 
    },
    { 
      "type": "paragraph", 
      "name": "説明文", 
      "settings": [
        { "type": "richtext", "id": "paragraph", "label": "本文" }
      ] 
    },
    { 
      "type": "payment_methods", 
      "name": "支払いロゴ", 
      "settings": [
        { 
          "type": "text", 
          "id": "payment_list", 
          "label": "ロゴID", 
          "default": "visa,master,jcb,applepay,googlepay,paypay" 
        }
      ] 
    },
    { 
      "type": "image", 
      "name": "自由画像", 
      "settings": [
        { "type": "image_picker", "id": "image", "label": "画像" }
      ] 
    }
  ],
  "presets": [
    { "name": "万能ご利用ガイド" }
  ]
}
{% endschema %}

ステップ3:カスタマイズ画面からの設定

テーマのカスタマイズ画面(エディタ)を開きます。
作成した「ご利用ガイド」などのページに 「万能ご利用ガイド」 セクションを追加します。
あとはブロックを追加し、キーワードを入力するだけです。


3. このセクションで「できること」全リスト

今回のコードは、支払いロゴを出すだけではありません。ご利用ガイドに必要な要素をすべてノーコードで配置できます。

  • 大見出し(タイトル):セクションの区切りとなる、黒背景のスタイリッシュな見出し。
  • 小見出し(サブタイトル):項目を整理する、グレー背景のサブ見出し。
  • 文章内容(リッチテキスト):リンクや注釈を自由に記述できる本文エリア。
  • 支払いロゴ自動生成:キーワードを入力するだけで公式ロゴを表示。PC6列・SP3列に自動で整列します。
  • 画像挿入:自作のバナーや、支払い以外の解説図を好きな位置に配置可能。

4. 【重要】設置場所(フッター等)に合わせたサイズ調整のコツ

今回のコードは、ページ中央に大きく表示させる「ご利用ガイド」を前提として、PCで6列、スマホで3列に並ぶよう設計されています。

しかし、もしこのセクションを「フッターの狭いエリア」「サイドバー」などで使いたい場合は、CSSの調整が必要です。

調整のポイント:
CSS内の .guide-logo-icon の width 計算式に注目してください。

  • (100% - (15px * 5)) / 6 の 「6」 が列数です。
  • フッターなど狭い場所で3列にしたい場合は、ここを 「3」 に書き換えてください。
  • また、ロゴを小さくしすぎると文字が読めなくなるため、min-width(最小幅)を設定して、自動で改行されるように調整するのがプロの技です。

5. 【豆知識】ロゴを呼び出す魔法のキーワード一覧

今回のカスタマイズの肝は、キーワードを入力するだけでロゴが出る点です。

  • クレジットカード: visa, master, american_express, jcb, diners_club, discover
  • スマホ決済: pay_pay, applepay, googlepay, paypal
  • コンビニ: familymart, lawson, ministop, dailyyamazaki, seicomart

※すべて半角英数字、カンマ(,)区切りで入力してください。


6. なぜこの「自作」がアプリや画像貼り付けより優れているのか?

① 運用コストと時間の削減

一度設置すれば維持費は0円。新しい決済を導入しても管理画面から単語を追加するだけで、修正は数秒で終わります。

② 常に「最新かつ高画質」な公式ロゴ

Shopifyの最新SVGデータを呼び出しているため、ブランド側のデザイン変更があった際も自動的に追従。ディスプレイの違いがあってもボケません。

③ テーマを選ばない高い互換性

Dawnはもちろん、PrestigeやImpactなどの有料テーマでも動作します。独自の横幅設定が必要な場合は、CSSの max-width をお使いのテーマに合わせて調整してください。


まとめ

「支払い方法の表示」は小さな要素に思えるかもしれません。
しかし、購入を決定する瞬間に目にする情報の「美しさ」と「正確さ」は、ストアへの信頼に直結します。

ぜひこの万能セクションを導入して、スマートにストアの「ファン」を増やしていってください!


カスタマイズのご相談はこちら
自社ストアに合わせたデザイン調整や、フッターへの埋め込み調整、オリジナルの機能追加をご希望の方は、お気軽にお問い合わせください。

当ブログ お問い合わせフォーム
https://yurufuwacat.com/question/

MottuDesign公式HP CONTACTフォーム
https://mottu-design.com/contact/

-Shopify, Web制作, コーディング
-, ,

Copyright© ゆるふわなねこ , 2026 All Rights Reserved.