【Shopify】「テーマのカスタマイズ」のみで日本語Webフォントを追加できるようにカスタマイズ!

liquid
liquid Shopfy2.0 Shopify Webフォント

shopifyでは、テーマ内で選択できるフォントに日本語フォントがないです。

追加しようとした場合、参考になる記事としては、headタグ内またはcss内にハードコーディングで追記する方法が紹介されていますが、

これをコードに触らないで管理できるようにする方法をご紹介します。

完成形は「テーマのカスタマイズ」画面内の、「テーマ設定」内に以下のように入力フィールドを設置します。

手順

①theme.liquidの行の下に以下を追記

% if settings.type_body_jp_font %}
  {% comment %}テーマ設定にて日本語フォントが入力されていれば起動{% endcomment %}
  <style>
    body,
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    p,
    blockquote,
    li,
    a,
    *:not(.fa):not([class*="pe-"]):not(.lni):not(i[class*="iccl-"]):not(i[class*="la"]):not(i[class*="fa"]) {
      font-family: {{ settings.type_body_jp_font }}}
  </style>
{% endif %}

これで、
{{ settings.type_body_jp_font }}
に入力されたフォントを読んでこれるようになった。

※ *:not(.fa):not([class*=”pe-“]):not(.lni):not(i[class*=”iccl-“]):not(i[class*=”la”]):not(i[class*=”fa”]) のコードで、指定のクラス(例えば:not([class*=”pe-“])ならpe-から始まるクラス名を対象から除外、という意味)に対してはフォントが適用されないようにできます。

参考:

【CSS】:not否定擬似クラスの使い方とできること - bagelee(ベーグリー)
CSSの「:not」という否定擬似クラスの使い方とできることについて書いていきます。

ここでは僕のストアの例で記載していますが、ここは必要に応じて変更するか、不要なら消していただいても動作します。

②settings_schema.jsonに以下を追記

settings_schema.json
の “settings”: [
{
“type”: “header”,
“content”: “Global”
},
の下に以下をを追記

{
"type": "textarea",
"id": "type_body_jp_font",
"label": "日本語フォント設定",
"info": "ここに入力されたfont-familyをフォント設定に追加します。"
},

これでサイトの標準フォントを日本語でも「テーマの設定」画面から設定できるようになりました!

適用前
適用後

ただし、今回のやり方ではインポートしなくても使える汎用Webフォント(遊明朝体)を使用しているので、

インポートをする必要がありませんでしたが、新たにインポートを必要とするフォントでは、そのインポートのコードも

同じように管理画面から登録できるようにすると便利そうです。

Webサイト制作を依頼したい方へ

PRYTHM WORKS(プリズムワークス)は、東京都墨田区、東京スカイツリーのふもとにあるWebコンテンツ制作事務所です。

華々しいおしゃれなECサイトをはじめ、アンダーグラウンドな案件まで幅広くご依頼をいただき、どんな案件でも真心・丁寧・楽しくを理念に掲げて制作しております!

作りたいサービスはあるけど、まずは費用感が知りたい!という方も、まずはお問い合わせください!

mail@prytymworks.tokyo

PRYTHM WORKSが手掛ける仕事の一部をご紹介します。

制作のご依頼者様用 費用かんたんお見積もりフォーム

おそらく本記事を読まれるのは、制作の現場の、法人またはフリーの、プロデューサーの方、ディレクターの方、エンジニアの方がほとんどかと存じます。
いつもおつかれさまです!そして本記事をお読みいただきありがとうございます。
紹介した記事の内容について、またはその他制作のご依頼について、以下のフォームより簡易お見積もりができます!
試算だけならフォーム送信しなくてもできますので、ぜひ試しにいかがでしょう?

お仕事をご希望の制作者様用 お問合せフォーム

また、まずはライトなご相談から…ということであれば、こちらのコンタクトフォームからお気軽にどうぞ!ご縁を大切にしてご返信いたします!

    タイトルとURLをコピーしました