Shopifyのブログ記事にコードのシンタックスハイライト機能を付ける Tsun Inc.

Shopifyのブログ記事にコードのシンタックスハイライト機能を付ける

Tsun Inc.でCTOをしている小笠原です!
最近はShopifyのアプリやテーマの開発を行っています。
このブログではShopify開発に役立つ情報を共有していきます。
Shopifyエンジニアの方の参考になれば嬉しいです!

なぜ作ろうと思ったのか

テック系のブログ記事を書くときにコードを載せることが多くなりますが、Shopifyのブログ記事そのままだとコードが読みづらいため。

作成したもの

Dawnをベースにブログ記事にコードのシンタックスハイライト機能を付けました。
シンタックスハイライト機能を実現するライブラリはPrismhighlight.jsなどがありますが、今回はPrismを採用しました。

以下で、DawnテーマにPrismを使ったシンタックスハイライト機能の付け方を説明します!
作成物を直接見たい方はTsun Inc.のリポジトリを参照してみてください。

前提条件

対象読者

  • Shopifyのテーマ変更ができる
  • HTML、CSS、JavaScript、Liquidに関する簡単な知識がある

準備するもの

  • Dawnテーマ (v5.0.0で動作確認しましたが、以前のバージョンでも問題ないはずです)
  • ブログ記事

実装

※ 今回の実装方法ではShopifyのテーマのコードを直接編集する方法をとるため、必ず事前にバックアップをしておいてください。

今回の実装では

  • PrismのJS、CSSファイルの作成
  • ブログ記事用のLiquidファイルでPrismを読み込む

の2つの工程を行います。

PrismのJS、CSSファイルの作成

単にシンタックスハイライト機能を試してみたい方はこの工程はスキップしても問題ありません。

サンプルとして用意したTsun Inc.のGitHubリポジトリから

をダウンロードしてください。

ご自分でPrismのファイルを用意したい方は下記を実行してください。

  1. https://prismjs.com/download.html に行き、必要な言語とプラグインにチェックを入れる

    Prismは必要な機能のみを含んだJS、CSSファイルを生成することで軽量化を実現しています。
    僕は今後記事を書く際に必要になりそうな言語とLine HighlightLine NumbersUnescaped MarkupToolbarCopy to Clipboard ButtonDiff Highlightプラグインにチェックを付けました。

  2. 下部のDOWNLOAD JSボタン、DOWNLOAD CSSボタンを押して、prism.jsとprism.cssをダウンロードする

ブログ記事用のLiquidファイルでPrismを読み込む

手元にprism.jsとprism.cssが用意できたと思いますので、Shopifyテーマに組み込みます。

  1. Shopifyの管理画面から オンラインストア > テーマ を選択
  2. アクション > コードを編集 を選択
  3. Assets > 新しいassetを追加を選択
  4. ファイルをアップロード からprism.jsを選択してアップロード
  5. 同様にprism.cssもアップロード
  6. Sectionsのmain-article.liquidを開く
  7. 下記のようにコードを編集
  8. 保存する を選択して保存

ここまでできたら、ブログ記事内でコード用のタグを書けばPrismが自動でシンタックスハイライトを付けてくれます!
タグの書き方はhttps://prismjs.com/index.html#basic-usageを参考にしてください。

Scriptタグを使う場合の注意点

spanタグやscriptタグなどのHTMLのタグを含むコードの場合、ブログ記事を保存する際にShopify側でエスケープされてしまうので、エスケープされないようにする必要があるので注意してください。

<pre><code class="language-css"><!--
<script src="{{ 'table-of-contents.js' | asset_url }}" defer="defer" />
--></code></pre>

のように記述すればOKです。

まとめ

今回はShopifyのブログ記事にコードのシンタックスハイライト機能を付ける方法をご紹介しました。
Prismは軽量でありつつ多機能なので、ご自身にあった表示方法にカスタマイズをいろいろしてみてください!

Tsun Inc.ではShopifyテーマのカスタマイズにも対応してます。
もし、Shopifyテーマのカスタマイズをしたい方は、Tsun Inc.へお問い合わせください。

まだShopifyのブログ機能を利用していない方は、下記の記事でShopifyのブログ機能について解説していますので参考にしてみてください。

Shopifyのブログ機能をフル活用しよう|機能や拡張アプリを紹介

ブログに戻る
  • RuffRuff 予約販売

    💎 Built for Shopify

    Shopifyストアに予約販売機能を簡単に導入できるShopifyアプリ

    詳しくみる 
  • RuffRuff 注文制限

    Shopifyストアで販売個数制限を簡単に実施できるShopifyアプリ

    詳しくみる 
  • RuffRuff 販売期間

    Shopifyストアで発売予告や期間限定販売を簡単に実施できるShopifyアプリ

    詳しくみる 
  • RuffRuff 目次作成|Shopifyアプリ

    RuffRuff 目次作成

    💎 Built for Shopify

    Shopifyのコンテンツに自動で目次を表示するShopifyアプリ

    詳しくみる 
  • RuffRuff タグ一覧|Shopifyアプリ

    RuffRuff タグ一覧

    💎 Built for Shopify

    Shopifyストアにタグ一覧を自動で表示するShopifyアプリ

    詳しくみる 
  • RuffRuff 著者情報|Shopifyアプリ

    RuffRuff 著者情報

    Shopifyストアに著者プロフィールを簡単に表示できるShopifyアプリ

    詳しくみる 
1 6
  • Shopifyで顧客タグを活用しよう!顧客タグの設定方法や活用方法をご紹介

    Shopifyで顧客タグを活用しよう!顧客タグの設定方法や活用方法をご紹介

    Tsunライターチーム

    Shopifyで運営するECサイトにおいて、顧客タグは非常に便利な機能の1つです。顧客タグを活用することで、顧客を特定のグループに分類し、そのグループに対して特別な販売施策を実施することができます。 本記事では顧客タグの設定方法や活用方法、おすすめのShopifyアプリを紹介してます。 これからShopifyで顧客タグを活用しようと考えている方はもちろん、すでに顧客タグを使っているけれど活用方法に悩んでいる方にも、ぜひ参考にしていただければと思います。 Shopifyの顧客タグとは? 顧客タグは、Shopifyストアの顧客管理機能の一部で、Shopifyオーナーが顧客を特定のグループやカテゴリに分類するために使用するラベルです。顧客タグを使用することで、顧客を簡単に整理し、特定のニーズに合わせたマーケティングやプロモーションを行うことができます。 Shopifyヘルプセンター内には「お客様タグ」と表現している箇所もありますが、「顧客タグ」と同義となります。 顧客タグを活用するメリット セグメントできる 顧客を特定のグループに分けることで、マーケティングキャンペーンやプロモーションをターゲットしやすくなります。例えば、「VIP顧客」や「新規顧客」などのタグを使って、それぞれに適したメールマーケティングを行うことができます。 パーソナライズに活用できる 顧客の購買行動や好みに基づいてタグを設定することで、顧客が興味ありそうな商品のレコメンドなどよりパーソナライズされたショッピング体験を提供できます。例えば、特定の製品カテゴリに興味がある顧客に「興味:ファッション」といったタグを付けることができます。 自動化や効率化ができる 顧客タグを利用して、特定のタグが付いた顧客に自動的に割引や特典を適用することができます。また、特定のタグが付いた顧客だけに会員限定販売を実施することも出来ます。これにより、顧客満足度を高めながら効率的に運営を行うことが可能です。 分析に活かせる 顧客タグ別にデータを分析することで、どのセグメントが最も売上に貢献しているかや、どのマーケティング戦略が効果的であるかを理解するのに役立ちます。 顧客タグの活用例 セグメントする Shopify純正のセグメント機能を利用することで、特定の顧客タグがついた会員のみを抽出することが出来ます。 メルマガ配信する 前述のセグメント機能とShopifyメールを組み合わせることで、特定の顧客タグがついた会員に対して、メルマガを配信することが出来ます。 会員ランクを付与する Shopifyのセグメント機能や会員ランクアプリを利用することで、特定条件を満たした会員に対して「シルバー」や「ゴールド」などの顧客タグを設定することが出来ます。 下記のブログ記事では会員ランク制度の導入メリットや顧客に会員ランクを設定する方法、おすすめのShopifyアプリを紹介しています。ご参考にしてください。 Shopifyの会員ランクアプリ4選|会員ランク制度のメリット・デメリット VIP会員限定に商品を販売する 顧客タグとShopifyアプリ「RuffRuff 予約販売」を活用することで、VIP会員(VIPタグの付いた会員の場合)だけに商品を販売することが出来ます。 詳しい設定方法は下記のブログ記事もご参考にしてください。 Shopifyで会員限定販売やVIP会員限定セールを設定する方法 ブラックリスト会員からの購入を制限する...

    Shopifyで顧客タグを活用しよう!顧客タグの設定方法や活用方法をご紹介

    Tsunライターチーム

    Shopifyで運営するECサイトにおいて、顧客タグは非常に便利な機能の1つです。顧客タグを活用することで、顧客を特定のグループに分類し、そのグループに対して特別な販売施策を実施することができます。 本記事では顧客タグの設定方法や活用方法、おすすめのShopifyアプリを紹介してます。 これからShopifyで顧客タグを活用しようと考えている方はもちろん、すでに顧客タグを使っているけれど活用方法に悩んでいる方にも、ぜひ参考にしていただければと思います。 Shopifyの顧客タグとは? 顧客タグは、Shopifyストアの顧客管理機能の一部で、Shopifyオーナーが顧客を特定のグループやカテゴリに分類するために使用するラベルです。顧客タグを使用することで、顧客を簡単に整理し、特定のニーズに合わせたマーケティングやプロモーションを行うことができます。 Shopifyヘルプセンター内には「お客様タグ」と表現している箇所もありますが、「顧客タグ」と同義となります。 顧客タグを活用するメリット セグメントできる 顧客を特定のグループに分けることで、マーケティングキャンペーンやプロモーションをターゲットしやすくなります。例えば、「VIP顧客」や「新規顧客」などのタグを使って、それぞれに適したメールマーケティングを行うことができます。 パーソナライズに活用できる 顧客の購買行動や好みに基づいてタグを設定することで、顧客が興味ありそうな商品のレコメンドなどよりパーソナライズされたショッピング体験を提供できます。例えば、特定の製品カテゴリに興味がある顧客に「興味:ファッション」といったタグを付けることができます。 自動化や効率化ができる 顧客タグを利用して、特定のタグが付いた顧客に自動的に割引や特典を適用することができます。また、特定のタグが付いた顧客だけに会員限定販売を実施することも出来ます。これにより、顧客満足度を高めながら効率的に運営を行うことが可能です。 分析に活かせる 顧客タグ別にデータを分析することで、どのセグメントが最も売上に貢献しているかや、どのマーケティング戦略が効果的であるかを理解するのに役立ちます。 顧客タグの活用例 セグメントする Shopify純正のセグメント機能を利用することで、特定の顧客タグがついた会員のみを抽出することが出来ます。 メルマガ配信する 前述のセグメント機能とShopifyメールを組み合わせることで、特定の顧客タグがついた会員に対して、メルマガを配信することが出来ます。 会員ランクを付与する Shopifyのセグメント機能や会員ランクアプリを利用することで、特定条件を満たした会員に対して「シルバー」や「ゴールド」などの顧客タグを設定することが出来ます。 下記のブログ記事では会員ランク制度の導入メリットや顧客に会員ランクを設定する方法、おすすめのShopifyアプリを紹介しています。ご参考にしてください。 Shopifyの会員ランクアプリ4選|会員ランク制度のメリット・デメリット VIP会員限定に商品を販売する 顧客タグとShopifyアプリ「RuffRuff 予約販売」を活用することで、VIP会員(VIPタグの付いた会員の場合)だけに商品を販売することが出来ます。 詳しい設定方法は下記のブログ記事もご参考にしてください。 Shopifyで会員限定販売やVIP会員限定セールを設定する方法 ブラックリスト会員からの購入を制限する...

  • Shoopifyで決済方法をカスタマイズできるアプリ 4選|支払い方法を非表示・並べ替え・名前変更できるShopifyアプリを紹介

    Shoopifyで決済方法をカスタマイズできるアプリ 4選|支払い方法を非表示・並べ替え・名前...

    Tsunライターチーム

    みなさんはご自身のShopifyストアで「高額商品の場合は代引き決済を非表示にしたい」など特定条件下で決済方法を非表示にしたいと思ったことはありませんか?また、「特定の決済方法の利用率を上げるために表示順を変更したい」など思ったことはありませんか? 本ブログ記事では、特定条件下でチェックアウトページの決済方法を非表示にしたり、並べ替えたり、名前を変更したりできるShopifyアプリを紹介したいと思います。 下記のブログ記事ではShopifyで利用できる決済方法の特徴や手数料をまとめています。ご参考にしてください。 【まとめ】Shopifyで利用できる決済方法まとめ|特徴や各種費用も紹介 決済方法をカスタマイズできるShopifyアプリ BeSure Checkout Rules 出典:BeSure Checkout Rules|Shopifyアプリストア BeSure Checkout Rulesは、Shopifyのチェックアウトページにおける配送方法や支払い方法の表示をカスタマイズできるアプリです。カート合計金額、重量、住所、カート内の商品、タグなどの様々な条件を組み合わせて、配送方法や支払い方法の並び替え、名前変更、非表示化ができます。最高品質アプリの証である「Built for Shopify」も獲得しています。 BeSure Checkout Rulesの料金プラン プラン名 月額料金 年額料金 機能 無料プラン 無料 - 支払い方法名変更ルールを1つ無料で利用可能 テストステータスでのルールの無料テスト Shopify開発ストアでの無料テスト スターター...

    Shoopifyで決済方法をカスタマイズできるアプリ 4選|支払い方法を非表示・並べ替え・名前...

    Tsunライターチーム

    みなさんはご自身のShopifyストアで「高額商品の場合は代引き決済を非表示にしたい」など特定条件下で決済方法を非表示にしたいと思ったことはありませんか?また、「特定の決済方法の利用率を上げるために表示順を変更したい」など思ったことはありませんか? 本ブログ記事では、特定条件下でチェックアウトページの決済方法を非表示にしたり、並べ替えたり、名前を変更したりできるShopifyアプリを紹介したいと思います。 下記のブログ記事ではShopifyで利用できる決済方法の特徴や手数料をまとめています。ご参考にしてください。 【まとめ】Shopifyで利用できる決済方法まとめ|特徴や各種費用も紹介 決済方法をカスタマイズできるShopifyアプリ BeSure Checkout Rules 出典:BeSure Checkout Rules|Shopifyアプリストア BeSure Checkout Rulesは、Shopifyのチェックアウトページにおける配送方法や支払い方法の表示をカスタマイズできるアプリです。カート合計金額、重量、住所、カート内の商品、タグなどの様々な条件を組み合わせて、配送方法や支払い方法の並び替え、名前変更、非表示化ができます。最高品質アプリの証である「Built for Shopify」も獲得しています。 BeSure Checkout Rulesの料金プラン プラン名 月額料金 年額料金 機能 無料プラン 無料 - 支払い方法名変更ルールを1つ無料で利用可能 テストステータスでのルールの無料テスト Shopify開発ストアでの無料テスト スターター...

  • SEOのメリット・デメリット|Shopifyで出来るSEO対策やアプリも紹介 Tsun Inc.

    Shopifyで出来るSEO対策|SEOの基本やメリット、おすすめSEO対策アプリも紹介

    Tsunライターチーム

    ShopifyストアのSEOを強化し、検索ランキングを上げるための基本戦略、メリットとデメリット、おすすめアプリまで詳しく解説。あなたのビジネスを次のレベルへと導きます。

    Shopifyで出来るSEO対策|SEOの基本やメリット、おすすめSEO対策アプリも紹介

    Tsunライターチーム

    ShopifyストアのSEOを強化し、検索ランキングを上げるための基本戦略、メリットとデメリット、おすすめアプリまで詳しく解説。あなたのビジネスを次のレベルへと導きます。

  • Shopifyで代引き決済を導入するメリット・デメリット|設定方法や手数料もご紹介

    Shopifyで代引き決済を導入するメリット・デメリット|設定方法や手数料もご紹介

    Tsunライターチーム

    みなさんはご自身のShopifyストアで代引き決済を導入していますか? 本記事では代引き決済のメリットやデメリット、設定方法などをご紹介します。 代引き決済とは? 代引き決済とは「代金引換決済」の略で、商品の配達時に配達員に代金を支払う決済方法です。代引き決済はクレジットカードを所有していないユーザーでも商品を購入できるメリットがある一方で、代引き手数料が発生するデメリットもあります。 代引き決済のメリット 安心して購入できる 商品を受け取ってから代金を支払うため、お客様にとっては詐欺や商品未着のリスクを回避できます。 カゴ落ち防止に繋がる 出典:Baymard Institute カゴ落ちの原因の上位に「クレジットカード情報を入力したくない」や「希望する決済種別がない」という理由があります。クレジットカードを保有していない方や、好まない方のカゴ落ちを防ぐためにも、代引き決済はある程度効果があるといえるでしょう。 出典:インターネットの利用状況|総務省 令和3年版の総務省の調査結果では、「インターネットで購入する際の決済方法」として、代引き決済はクレジットカード決済やコンビニ決済に次いで3番目に利用されている決済方法です。決済方法を増やしたいと考えている方は、代引き決済を検討してみてはいかがでしょうか。 2番目に多く利用されているコンビニ決済に関しては下記のブログ記事もご参考にしてください。 Shopifyストアにコンビニ決済を導入するメリットや導入方法 下記のブログ記事では「決済方法の拡充」以外にもShopifyで出来るカゴ落ち対策を紹介しています。ご参考になさってください。 Shopifyで出来るカゴ落ち対策|原因やShopifyアプリも紹介 クレジットカードを保有できない若年層の獲得 ECサイトでの主要な支払い方法の1つにクレジットカード決済がありますが、多くのクレジットカード会社はカード発行対象年齢を18才〜20才以上と設定しています。そのため、クレジットカード支払いのみのストアでは未成年者が購入する事ができないケースが殆どですが、代引き決済を導入する事でこの問題は解消されます。 クレジットカードの使用を好まない層の獲得 成人済の方でもクレジットカード決済に抵抗感を持っている方は多く存在します。クレジットカード決済を避けたい方でもストアで購入ができるように、代引き決済を導入しておくことは双方にメリットが生まれます。 取引手数料が発生しない 出典:Shopifyペイメント|Shopifyヘルプセンター Shopifyペイメント以外の決済方法を利用する場合、Shopifyで契約しているプランに応じて取引手数料が発生します。しかし、代引き決済に関しては取引手数料が発生しません。 Shopifyペイメントに関しては下記のブログ記事もご参考にしてください。 Shopifyペイメント徹底解説 - 決済手数料・メリット・デメリットまで 代引き決済のデメリット 代引き手数料が発生する...

    Shopifyで代引き決済を導入するメリット・デメリット|設定方法や手数料もご紹介

    Tsunライターチーム

    みなさんはご自身のShopifyストアで代引き決済を導入していますか? 本記事では代引き決済のメリットやデメリット、設定方法などをご紹介します。 代引き決済とは? 代引き決済とは「代金引換決済」の略で、商品の配達時に配達員に代金を支払う決済方法です。代引き決済はクレジットカードを所有していないユーザーでも商品を購入できるメリットがある一方で、代引き手数料が発生するデメリットもあります。 代引き決済のメリット 安心して購入できる 商品を受け取ってから代金を支払うため、お客様にとっては詐欺や商品未着のリスクを回避できます。 カゴ落ち防止に繋がる 出典:Baymard Institute カゴ落ちの原因の上位に「クレジットカード情報を入力したくない」や「希望する決済種別がない」という理由があります。クレジットカードを保有していない方や、好まない方のカゴ落ちを防ぐためにも、代引き決済はある程度効果があるといえるでしょう。 出典:インターネットの利用状況|総務省 令和3年版の総務省の調査結果では、「インターネットで購入する際の決済方法」として、代引き決済はクレジットカード決済やコンビニ決済に次いで3番目に利用されている決済方法です。決済方法を増やしたいと考えている方は、代引き決済を検討してみてはいかがでしょうか。 2番目に多く利用されているコンビニ決済に関しては下記のブログ記事もご参考にしてください。 Shopifyストアにコンビニ決済を導入するメリットや導入方法 下記のブログ記事では「決済方法の拡充」以外にもShopifyで出来るカゴ落ち対策を紹介しています。ご参考になさってください。 Shopifyで出来るカゴ落ち対策|原因やShopifyアプリも紹介 クレジットカードを保有できない若年層の獲得 ECサイトでの主要な支払い方法の1つにクレジットカード決済がありますが、多くのクレジットカード会社はカード発行対象年齢を18才〜20才以上と設定しています。そのため、クレジットカード支払いのみのストアでは未成年者が購入する事ができないケースが殆どですが、代引き決済を導入する事でこの問題は解消されます。 クレジットカードの使用を好まない層の獲得 成人済の方でもクレジットカード決済に抵抗感を持っている方は多く存在します。クレジットカード決済を避けたい方でもストアで購入ができるように、代引き決済を導入しておくことは双方にメリットが生まれます。 取引手数料が発生しない 出典:Shopifyペイメント|Shopifyヘルプセンター Shopifyペイメント以外の決済方法を利用する場合、Shopifyで契約しているプランに応じて取引手数料が発生します。しかし、代引き決済に関しては取引手数料が発生しません。 Shopifyペイメントに関しては下記のブログ記事もご参考にしてください。 Shopifyペイメント徹底解説 - 決済手数料・メリット・デメリットまで 代引き決済のデメリット 代引き手数料が発生する...

1 4
  • 【Tips】Shopify の GraphQL Admin API で顧客総数を取得する

    【Tips】Shopify の GraphQL Admin API で顧客総数を取得する

    小笠原 京平

    Shopifyの GraphQL Admin API の小ネタです。 Shopifyの顧客総数を取得したい場合のクエリは、いざ探そうと思ってもパッと見つからないのでメモしておきます。 対象読者 Shopify GraphQL Admin API を使ったことがある方 顧客総数を取得するクエリ 2023-07 バージョンから CustomerSegmentMemberConnection に変更があったため、2023-07より前と以降で若干クエリが異なります。 ※ changelog 2023-07以降 { customerSegmentMembers(first: 1, query: "") { totalCount } } 2023-07より前...

    【Tips】Shopify の GraphQL Admin API で顧客総数を取得する

    小笠原 京平

    Shopifyの GraphQL Admin API の小ネタです。 Shopifyの顧客総数を取得したい場合のクエリは、いざ探そうと思ってもパッと見つからないのでメモしておきます。 対象読者 Shopify GraphQL Admin API を使ったことがある方 顧客総数を取得するクエリ 2023-07 バージョンから CustomerSegmentMemberConnection に変更があったため、2023-07より前と以降で若干クエリが異なります。 ※ changelog 2023-07以降 { customerSegmentMembers(first: 1, query: "") { totalCount } } 2023-07より前...

  • Shopify Vite Plugin でテーマ拡張機能の開発体験を改善する

    Shopify Vite Plugin でテーマ拡張機能の開発体験を改善する

    小笠原 京平

    今回は Barrel が提供する Shopify Vite Plugin を導入して、テーマ拡張機能の開発体験を改善する方法をご紹介します。 対象読者 テーマ拡張機能の開発経験がある方 はじめに Shopifyのテーマ拡張機能 (Theme app extensions) はShopify アプリ開発において、ストアフロントに機能を追加するための機能です。 Liquid、JavaScript、CSSなどを使って開発することができますが、通常のアプリ開発と比較すると、ローカルでの開発体験はそれほどよくありません。 そこで、今回は Shopify Vite Plugin を導入して、開発体験を改善していきます。 Shopify Vite Plugin とは Barrel が提供する Vite用プラグインです。ViteをShopify テーマ開発に組み込んで開発体験を改善することを目的として作られていますが、テーマ拡張機能においてもその恩恵を受けることができます。...

    Shopify Vite Plugin でテーマ拡張機能の開発体験を改善する

    小笠原 京平

    今回は Barrel が提供する Shopify Vite Plugin を導入して、テーマ拡張機能の開発体験を改善する方法をご紹介します。 対象読者 テーマ拡張機能の開発経験がある方 はじめに Shopifyのテーマ拡張機能 (Theme app extensions) はShopify アプリ開発において、ストアフロントに機能を追加するための機能です。 Liquid、JavaScript、CSSなどを使って開発することができますが、通常のアプリ開発と比較すると、ローカルでの開発体験はそれほどよくありません。 そこで、今回は Shopify Vite Plugin を導入して、開発体験を改善していきます。 Shopify Vite Plugin とは Barrel が提供する Vite用プラグインです。ViteをShopify テーマ開発に組み込んで開発体験を改善することを目的として作られていますが、テーマ拡張機能においてもその恩恵を受けることができます。...

  • Shopify Admin API GraphiQLとは? 使い方やメリット・デメリットを解説

    Shopify Admin API GraphiQLとは? 使い方やメリット・デメリットを解説します

    小笠原 京平

    ShopifyのAdmin APIにはGraphQLを用いたAPIがあります。手軽に試す方法としてGraphiQL (GraphQLではなくGraphiQLなのに注意) というIDEがありますので、今回はShopify GraphiQLの使い方やメリット・デメリットを解説します。 GraphiQLとは GraphQL公式が運営しているオープンソースプロジェクトです。GraphQLをブラウザ上でインタラクティブに操作・実行することができます。 グラフィカル (/ˈɡrafək(ə)l/) と発音します。(graphicalと同じ発音) GraphQLとは GraphQLはAPIのためのクエリ言語であり、既存のデータでクエリを実行するためのランタイムです。 GraphQLはAPI内のデータの完全で理解しやすい説明を提供し、クライアントに必要なものだけを要求する力を与え、APIを長期的に進化させることを容易にし、強力な開発者ツールを可能にします。 引用: GraphQL | A query language for your API Shopify GraphiQLの使い方 Shopify GraphiQLは各ストアにアプリをインストールするだけで使えますが、Shopify Devサイト上でデモを触れるので、まずは触ってみましょう! https://shopify.dev/docs/apps/tools/graphiql-admin-api Workshopをやってみよう! Shopifyが作成した「Learn...

    Shopify Admin API GraphiQLとは? 使い方やメリット・デメリットを解説します

    小笠原 京平

    ShopifyのAdmin APIにはGraphQLを用いたAPIがあります。手軽に試す方法としてGraphiQL (GraphQLではなくGraphiQLなのに注意) というIDEがありますので、今回はShopify GraphiQLの使い方やメリット・デメリットを解説します。 GraphiQLとは GraphQL公式が運営しているオープンソースプロジェクトです。GraphQLをブラウザ上でインタラクティブに操作・実行することができます。 グラフィカル (/ˈɡrafək(ə)l/) と発音します。(graphicalと同じ発音) GraphQLとは GraphQLはAPIのためのクエリ言語であり、既存のデータでクエリを実行するためのランタイムです。 GraphQLはAPI内のデータの完全で理解しやすい説明を提供し、クライアントに必要なものだけを要求する力を与え、APIを長期的に進化させることを容易にし、強力な開発者ツールを可能にします。 引用: GraphQL | A query language for your API Shopify GraphiQLの使い方 Shopify GraphiQLは各ストアにアプリをインストールするだけで使えますが、Shopify Devサイト上でデモを触れるので、まずは触ってみましょう! https://shopify.dev/docs/apps/tools/graphiql-admin-api Workshopをやってみよう! Shopifyが作成した「Learn...

  • ブログ記事 Shopifyの必須Webhooks (Mandatory Webhooks)とは? GDPRや対応例など

    Shopifyの必須Webhooks (Mandatory Webhooks)とは? GDPR...

    小笠原 京平

    今回はShopifyアプリ開発を始めたときに詰まるポイントの1つ「必須Webhooks」について解説します。実装をしていなかったり、実装が不十分なためにレビューが通らなかった経験をされた方は多いんじゃないでしょうか?レビューで詰まらないためにも、ぜひご確認ください! Webhooksとは? Shopifyの必須Webhooksを説明する前に、Webhooksについて理解しましょう。Webhooksとは、Webアプリケーションと連携するために用いられるイベント通知の仕組みです。Webhooksを使うことで、あるWebアプリケーションで特定のイベントが起きたときに、データを受け取ったり、何かしらの動作をすることが可能になります。 エンジニアにとって身近な例でいうと、GitHubにコードをプッシュしたときに自動でビルドやテストをするときにWebhooksが使われています。 ShopifyのWebhooks そんなWebhooksはShopifyでも使うことができます。Shopifyアプリ開発では、Shopify Admin APIからWebhooksを使うことができます。また、アプリ以外でもShopify管理画面からWebhookを作成することもできます。 ShopifyのWebhooksにはHTTPSのエンドポイントのほか、Amazon EventBridgeやGoogle Cloud Pub/Subといったメッセージングサービスを使うこともできます。購読するイベントやマーチャントによっては瞬間的に大量のWebhooksを処理する必要があるため、スケールさせやすいメッセージングサービスを使ってWebhooksを処理することをおすすめします。 必須Webhooks (Mandatory Webhooks) とは? 必須Webhooksとは、Shopifyアプリを開発するときに必ず実装しなければならない3つのWebhooksのことです。この3つのWebhooksはGDPRに対応するために必要なWebhooksで、EU加盟国に関わらず、すべてのShopifyアプリはGDPRに準拠しなければなりません。必須Webhooksを実装していない場合、アプリレビューで却下されます。 (3つの必須Webhooks以外のWebhooksは任意で実装すればOKです。) また、必須Webhooksの3つはHTTPSのエンドポイントでのみ作成可能です。上述したEventBridgeやPub/Subを利用することはできません。 GDPRとは? GDPR(General Data Protection Regulation:一般データ保護規則)は、ヨーロッパ連合(EU)の個人情報保護法規で、2018年5月25日から施行されています。これは、EU全域での個人情報のプライバシーを保護し、データの取り扱い方に関して個々の人々により多くの制御権を付与するためのものです。 GDPRは、EU市民または居住者の個人データを処理する全ての組織に適用されます。これには、EU内外の組織も含まれ、EUの市民や居住者のデータを処理する場合、世界のどこにその組織があろうともGDPRの規定を守る必要があります。 GDPRの主な目的は、個人が自分の個人データをどのように収集、保存、使用されるのかを知り、そしてその制御をする権利を持つべきであるという考え方を強化し、統一化することです。これは、個人情報の透明性、アクセスの権利、修正の権利、忘れられる権利(データ削除の権利)、データ移行の権利など、いくつかの重要な権利を個々の人々に付与します。 参考: ChatGPT 必須Webhooksの対応例 上記で説明したように、必須WebhooksとはGDPRに準拠するためのWebhooksなので、顧客情報、ストア情報をデータベースなどに保存しているかどうかで対応方法が変わります。...

    Shopifyの必須Webhooks (Mandatory Webhooks)とは? GDPR...

    小笠原 京平

    今回はShopifyアプリ開発を始めたときに詰まるポイントの1つ「必須Webhooks」について解説します。実装をしていなかったり、実装が不十分なためにレビューが通らなかった経験をされた方は多いんじゃないでしょうか?レビューで詰まらないためにも、ぜひご確認ください! Webhooksとは? Shopifyの必須Webhooksを説明する前に、Webhooksについて理解しましょう。Webhooksとは、Webアプリケーションと連携するために用いられるイベント通知の仕組みです。Webhooksを使うことで、あるWebアプリケーションで特定のイベントが起きたときに、データを受け取ったり、何かしらの動作をすることが可能になります。 エンジニアにとって身近な例でいうと、GitHubにコードをプッシュしたときに自動でビルドやテストをするときにWebhooksが使われています。 ShopifyのWebhooks そんなWebhooksはShopifyでも使うことができます。Shopifyアプリ開発では、Shopify Admin APIからWebhooksを使うことができます。また、アプリ以外でもShopify管理画面からWebhookを作成することもできます。 ShopifyのWebhooksにはHTTPSのエンドポイントのほか、Amazon EventBridgeやGoogle Cloud Pub/Subといったメッセージングサービスを使うこともできます。購読するイベントやマーチャントによっては瞬間的に大量のWebhooksを処理する必要があるため、スケールさせやすいメッセージングサービスを使ってWebhooksを処理することをおすすめします。 必須Webhooks (Mandatory Webhooks) とは? 必須Webhooksとは、Shopifyアプリを開発するときに必ず実装しなければならない3つのWebhooksのことです。この3つのWebhooksはGDPRに対応するために必要なWebhooksで、EU加盟国に関わらず、すべてのShopifyアプリはGDPRに準拠しなければなりません。必須Webhooksを実装していない場合、アプリレビューで却下されます。 (3つの必須Webhooks以外のWebhooksは任意で実装すればOKです。) また、必須Webhooksの3つはHTTPSのエンドポイントでのみ作成可能です。上述したEventBridgeやPub/Subを利用することはできません。 GDPRとは? GDPR(General Data Protection Regulation:一般データ保護規則)は、ヨーロッパ連合(EU)の個人情報保護法規で、2018年5月25日から施行されています。これは、EU全域での個人情報のプライバシーを保護し、データの取り扱い方に関して個々の人々により多くの制御権を付与するためのものです。 GDPRは、EU市民または居住者の個人データを処理する全ての組織に適用されます。これには、EU内外の組織も含まれ、EUの市民や居住者のデータを処理する場合、世界のどこにその組織があろうともGDPRの規定を守る必要があります。 GDPRの主な目的は、個人が自分の個人データをどのように収集、保存、使用されるのかを知り、そしてその制御をする権利を持つべきであるという考え方を強化し、統一化することです。これは、個人情報の透明性、アクセスの権利、修正の権利、忘れられる権利(データ削除の権利)、データ移行の権利など、いくつかの重要な権利を個々の人々に付与します。 参考: ChatGPT 必須Webhooksの対応例 上記で説明したように、必須WebhooksとはGDPRに準拠するためのWebhooksなので、顧客情報、ストア情報をデータベースなどに保存しているかどうかで対応方法が変わります。...

1 4

編集プロセス

EコマースやShopifyの初学者にとって、できるだけ “やさしく” “わかりやすく” “正確に” 難しいコマース用語やマーケティング用語、ストア構築から販売までの仕組み・ノウハウを伝えることを心がけて、記事コンテンツを作成しています。

掲載情報に関して

掲載している各種情報は、株式会社Tsunが経験および、調査した情報をもとにしています。できるだけ“最新“かつ“正確“な情報の掲載に努めておりますが、内容を完全に保証するものではありません。当サイトによって生じた損害について、株式会社Tsunではその賠償の責任を一切負わないものとします。掲載情報に誤りがある場合には、お手数ですが株式会社Tsunまでご連絡をいただけますようお願いいたします。