Skip to content

Edit default theme content

Edit default theme content is the form-based editor for words supplied by a theme: button labels, status messages, validation text, empty states, and other strings in locales/*.json. It edits the selected theme’s draft and does not change product/page content or visual-editor setting values.

Open Online store → Themes, open a theme’s actions, then select Edit default theme content. The dedicated route is scoped to that store and theme:

/stores/STORE_ID/themes/THEME_ID/content

Use the theme action instead of editing IDs in the URL; the seller API still checks store ownership and permissions.

What the editor loads

The page reads the theme’s current draft and enumerates JSON files in locales/. Schema locale files such as en.default.schema.json are excluded; this screen edits storefront strings, not visual-editor labels.

The required default storefront file—normally locales/en.default.json—defines:

  • the top-level tabs shown in the editor;
  • the complete editable string-key list;
  • the placeholder/default value for every non-default locale; and
  • the fallback used when a translated key is absent.

Every string leaf becomes one row. A nested path such as products.product.add_to_cart is shown with a human-readable breadcrumb and its exact dot-path. Pluralization objects become separate rows such as cart.items_count.one and cart.items_count.other. Numbers, booleans, arrays, objects without string leaves, and null are preserved in the JSON but are not editable rows.

Edit the default language

  1. Choose the locale marked (default).

  2. Select a top-level category tab or use Filter items to search the key, current value, or default text.

  3. Change one or more string values. Edited rows receive an Edited badge and the page counts effective changes.

  4. Select Save.

  5. Preview the draft, then publish the theme when the new copy is ready for buyers.

An empty value in the default locale is saved as an empty string because the default file is the source of truth. If an empty default is not intentional, enter the text before saving.

Edit another language

Choose another locale file from Language. Its rows use the default-locale text as the placeholder and show the default value below the input.

  • Typing text creates or replaces that translated string at the same dot-path.
  • Clearing a translated value removes that key from the selected locale so the default fallback resumes.
  • Keys that exist only in the translated JSON but not in the default file remain in the file, but they are not exposed as rows because the default file defines the supported key catalogue.
  • Unknown object structure and non-string values in the selected file are preserved when the edited string paths are merged back.

Switching language reloads that file. Save changes before switching if they must be retained.

Search and categories

Category tabs are the sorted top-level keys from the default JSON. Filter items searches all of these case-insensitively:

  • exact/dotted key path;
  • the selected locale’s current text; and
  • the default-locale text.

A filter changes only which rows are visible; it never deletes hidden keys or changes the saved JSON.

Draft save and conflict protection

Save serializes formatted JSON back to the selected locale file in the theme’s draft. It sends the revision that was loaded with the page. If another tab, teammate, code-editor save, or import advanced that file first, the stale save is rejected rather than overwriting newer work.

When This file changed elsewhere appears:

  1. Copy any local text you need to keep.

  2. Select Reload to fetch the latest draft file and revision.

  3. Reapply the intended changes.

  4. Save again.

The general Reload action discards unsaved values for the selected language and reloads current draft files. There is no merge of two conflicting locale documents in this form editor.

Saving does not publish. Buyers continue to see the current live theme until you publish the validated draft from the theme library or visual editor.

What this page does not edit

ContentCorrect surface
Section/block setting values and page layoutVisual editor
Theme setting/schema labels in *.schema.jsonEdit theme code
Products, collections, pages, blogs, or metaobject entriesTheir seller-admin content editor
Published-language list and primary languageSettings → Languages
Store home-page title/meta description/social imageOnline store preferences
Checkout content owned by checkout settingsSettings → Checkout

Testing theme text

Before publishing:

  • search for every edited key and confirm no accidental blank default remains;
  • preview the page/state that renders the string, including empty/error/sold-out states when relevant;
  • check interpolation variables such as {{ name }} and plural forms with 0, 1, and several items;
  • preview each published locale and confirm fallback is intentional rather than a missing translation;
  • verify _html translations contain only trusted theme markup; and
  • run strict theme validation so invalid JSON, oversized locale files, or Liquid/schema errors cannot publish.

The theme compiler caps each locale file at 1.5 MiB. A missing translation is a fallback concern, while malformed JSON is a validation error.

Troubleshooting

  • The page says there is no default locale. Add or rename a storefront file to LOCALE.default.json; a schema locale does not count.
  • A key is missing from the rows. It is absent from the default file, is not a string leaf, or belongs to a .schema.json file.
  • Clearing a translation shows English again. Expected—the key was deleted from that non-default file so fallback resumes.
  • Clearing a default string produces a blank label. Expected—the default file persists empty strings. Restore the intended text and save.
  • Save reports a conflict. Another writer advanced the file revision. Copy local work, reload, and reapply it.
  • Saved text is not visible to buyers. The change is in the draft. Preview that draft and publish it when ready.

Next steps

Locales and translation

File naming, t, pluralization, fallback, and published locale URLs — Locales and translation.

Using the visual editor

Edit layout, section/block settings, and preview state — Visual editor guide.

Edit theme code

Work directly with storefront and schema locale JSON — Edit theme code.