変更を反映する:push / publishとテーマの運用
公開テーマを壊さずに変更を反映し、公開のタイミングを自分で制御できる
最終確認: 2026-09
解説
受託の現場でなぜ必要か: この回では、公開中のテーマを壊さずに変更を反映し、公開のタイミングを自分で決められるようになります。
受託では「非公開テーマとして上げ、確認を取ってから公開」が基本で、この順番を守ることが本番を壊さない保険になります。
theme push --unpublishedとは、非公開テーマとして上げる基本形
theme push --unpublishedは、新しい非公開テーマとしてアップロードします。
受託の基本形です。
--themeで名前を付けます。
公開テーマへ直接pushしない理由は、「確認にYesと答えた瞬間に本番に出る」「エディタでの変更を上書きする」の2つです。
対話環境では確認プロンプトが出て、CIなどの非対話環境では--allow-liveが無いとエラーになります。
2回目以降は--themeでIDを固定して更新する
作った非公開テーマのIDを--themeで指定して更新します。--only/--ignoreで、対象ファイルを絞れます。--jsonを付けるとIDを機械的に取れます(自動化向け)。
pushするとエディタで行った設定変更が上書きされるので、--ignore config/settings_data.jsonで除外する運用を検討します。
theme publishで公開に切り替える
theme publishは、非公開テーマを公開に切り替えます。
管理画面からでもできますが、CLIで行うと手順書に残しやすくなります。push --publishでアップロードと同時に公開することもできますが、確認を挟むなら分けます。
テーマの名前はどう付けるか
「案件名/日付/内容」(例: client-2026-09-hero-v2)のように、テーマ一覧で誰が見ても分かる名前にします。
名前が無いと、誰も見分けられずに公開事故が起きます。
公式ドキュメント
※ ShopifyはShopify Inc.の商標です。本サイトは個人が制作した非公式の学習教材であり、同社の承認・提携・後援を受けていません。記載内容は2026-09時点のものです。料金・上限値・管理画面のラベルは変わるため、作業の前に公式ドキュメントで確認してください。