`visible_if` on a `header` in `config/settings_schema.json` is ignored by the theme editor
Nobody has claimed this yet.
- Dominant language
- Ruby
- Stars
- 11.9k
- Forks
- 1.5k
- Avg merge
- 17h 55m
- Merged PRs (30d)
- 3
Description
visible_if on {"type": "header"} entry in config/settings_schema.json has no effect in the theme editor. Regular settings in the same section, using the same expression, hide correctly - the header alone stays visible, leaving an orphan heading with nothing beneath it.
shopify theme check reports no offenses for the file.
Example
In config/settings_schema.json, add a section containing a header and a normal setting, both gated by the same always false expression:
{
"name": "Global section name",
"settings": [
{
"type": "header",
"content": "This won't hide",
"visible_if": "{{ false }}"
},
{
"id": "test_setting",
"type": "text",
"label": "Test setting",
"visible_if": "{{ false }}"
}
]
}
Expected
Neither entry is rendered - both are gated by the same false condition.
Actual
"Test setting" is hidden but "This won't hide" is still visible.
Note that visible_if is honored on a {"type": "header"} in section {% schema %} blocks but has no effect in config/settings_schema.json
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the visible_if examples in config/settings_schema.json and compare them with the section {% schema %} behavior described in the issue. Reproduce the always-false header and setting case, then verify that both entries are absent in the theme editor while shopify theme check still reports no offense.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- ruby
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 58/100