タイトルの通り、Shopifyの管理画面からテーマファイルがダウンロード出来ない場合にダウンロードする方法です。
テーマファイルは、Shopifyの管理画面で下記の手順でダウンロード出来ます(正確にはメール通知されます)が、何度トライしてもテーマファイルがダウンロード出来ない(=メール通知されない)場合があります。
理由は不明です。
Shopifyのサポートに問い合わせても埒が明かない方もいらっしゃるでしょう。
そんな場合に、テーマファイルをダウンロードする方法を紹介します。
テーマファイルをダウンロードする方法
Shopify Theme Kitを使用して、テーマファイルをダウンロードします。
Shopify Theme Kitとは
Shopify Theme Kitは、Shopifyテーマを開発する為のコマンドラインツールです。
開発と聞いて躊躇される方もいらっしゃるかもしれませんが、使い方はシンプルです。
なお、Shopify Theme Kitでは
- ショップ登録済みテーマ一覧の取得
- テーマのアップロードやダウンロード
- ローカルファイルをウォッチして変更した差分をShopify環境へ自動アップロード
- Windows、macOS、Linuxに対応
などが出来ます。
Shopify Theme Kitをインストール
前提としてMacを例として説明しますので、お手数ですがWindowsやLinuxの方はインストール方法は別途調べてください。
(あくまで今回の趣旨はTheme Kitの使い方の為です)
Theme Kitの使い方に関しては、OS関係なく共通です。
Macにて、下記コマンドを実行してShopify Theme Kitをインストールします。
(Homebrewは既にインストールされている前提です)
1 2 | $ brew tap shopify/shopify $ brew install themekit |
Shopifyでプライベートアプリを作成
Shopify Theme Kitをインストールしたところであれですが、使い方の前に、事前にプライベートアプリが必要になるためShopify側で作成します。
1.プライベートアプリの画面に遷移
2.「新しいプライベートアプリを作成する」ボタンをクリック
3.プライベートアプリを作成
- プライベートアプリ名:何でも良いです
- 緊急連絡用開発者メール:自分の所有するメールアドレス
「非アクティブなAdmin API権限を表示する」をクリックします。
4.必要な権限を設定
今回はテーマのダウンロードが目的なため、「テーマ」の権限は「読み取りアクセス」を選択します。
5.「アプリを作成する」ボタンをクリック
6.「パスワード」をコピーして控える
後ほどShopify Theme Kitで使用する際に必要となる「パスワード」を、コピーして控えておいてください。
以上でプライベートアプリの作成対応は終わりです。
次からいよいよShopify Theme Kitを使用してテーマファイルのダウンロードを行います。
テーマファイルをダウンロード
Shopify Theme Kitを使用してテーマファイルのダウンロードを行います!
1.ショップ登録済みテーマ一覧を取得
テーマ毎にテーマIDが付与されているため、下記のコマンドを実行してダウンロードしたいテーマのテーマIDを入手します。
1 | $ theme get --list -p=[your-password] -s=[you-store.myshopify.com] |
- [your-password]:先程控えたプライベートアプリのパスワード
- [you-store.myshopify.com]:自ショップのShopify URL
実行すると、下記のようなショップ登録済みのテーマ一覧が表示されます。
各テーマ名の左側の[]の間の数値がテーマIDです。
1 2 3 4 | Available theme versions: [109639516901] Sample-theme-01 [121822938169] Sample-theme-02 [129476019476] Sample-theme-03 |
ダウンロードしたいテーマのテーマIDを控えておいてください。
2.テーマファイルをダウンロード
お待ちかねのテーマファイルのダウンロードです。
ダウンロード出来るコマンドは2パターンあるため、それぞれ説明します。
■パターン1:テーマのconfigファイルを作成してテーマファイルをダウンロードする
1 | $ theme get --password=[your-password] --store=[you-store.myshopify.com] --themeid=[your-theme-id] |
作成されるconfig.ymlは、下記のような中身になっています。(パスワードやテーマIDは適当です)
1 2 3 4 | development: password: shppa_631018673r91849601g9q7n19673018c theme_id: "318401701859" store: you-store.myshopify.com |
このconfig.ymlがあれば、次回から
1 | --password=[your-password] --store=[you-store.myshopify.com] --themeid=[your-theme-id] |
の長ったらしい引数指定は不要となり、シンプルに
1 | $ theme get |
だけで実行できるようになるというわけです。便利ですね。
ただ、開発者でなく一度切りダウンロードできれば良い場合は、次で紹介するパターン2で良いかと思います。
■パターン2:テーマファイルをダウンロードする
1 | $ theme download --password=[your-password] --store=[you-store.myshopify.com] --themeid=[your-theme-id] |
パターン1との違いは、config.ymlファイルが作成されない点です。
config.ymlファイルにはパスワード情報などが記載しれているため、第三者にテーマファイルを共有したい等の理由でダウンロードしたい場合は、間違って共有しないようにこちらのパターンを使用したほうが良さそうです。
テーマファイルの一部ファイルのダウンロードに失敗した場合
そんなことあるの?と思いますが、あります。
前述のパターン1とパターン2のどちらの場合も、下記のように一部ダウンロードに失敗する場合があります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | [development] Warning, this is the live theme on XXXXX. [development] 246|246 [==============================================================================] 100 % [development] 246 files, Downloaded: 246, Errored: 2 [development] Errors encountered: [development] error downloading assets/materialdesignicons-webfont.ttf: could not read response body This may mean that the request was not able to finish successfully Http Response Status: 200 Request ID: u7y14j8y-mbuq-18j6-g982-9355gy71d017 Error: context canceled [development] error downloading assets/jquery.min.js: could not read response body This may mean that the request was not able to finish successfully Http Response Status: 200 Request ID: 7439w856-g8ej-4k9l-en71-nt81nta8qb4d Error: context canceled finished command with errors |
上記例では、下記の2つのファイルのダウンロードに失敗していますね。
- assets/materialdesignicons-webfont.ttf
- assets/jquery.min.js
これだと困るので、再度theme get
またはtheme download
のコマンドを実行すると、ダウンロードされていないファイルだけをダウンロードしてくれます。
または、下記のコマンドで特定のファイルをダウンロードすることも可能です。(config.ymlがある前提で、引数は省略しています)
1 | $ theme download [your-file-path] |
下記が先程ダウンロードに失敗した2つのファイルを指定してダウンロードするコマンドです。
1 2 | $ theme download assets/materialdesignicons-webfont.ttf $ theme download assets/jquery.min.js |
最後に
如何でしたでしょうか。
開発者でないと少し難しい気もしますが、テーマファイルのダウンロードに困っている方は少しだけ頑張ってみるとダウンロード出来るので、解決に繋がると幸いです。
下記ページでもShopifyについて紹介しているので、宜しければご覧ください。
【動確環境】
Mac:macOS Big Sur 11.2.3
Homebrew:3.1.2
ThemeKit(Shopify Theme Kit):1.1.6 darwin/amd64
コメントを残す