What Is Editable In Sanity
Files: sanity.config.ts, sanity/, src/config/config.toml · Skill level: Beginner
Run npm run dev:all, open the Studio at http://localhost:3333, and log in with your Sanity account. Content has one entry per language, then Site settings. Sanity has the full guide, including npm run setup for your first project. Everything below exists in English, French, and Arabic, and each language has its own documents.
Where Each Page Is Edited
All locations are under Content, then your language. The last column lists the rows you can add under Sections on this page. Each row changes one section for this page only, and a field you leave empty keeps the section’s own content.
| Address | Studio location | Sections on this page rows |
|---|---|---|
/ | Homepages > Home 1 | Hero, Steps, Why Us, Metrics, Services, Reviews, Contact, Questions, Related Posts, CTA |
/home-cleaning/ | Homepages > Home: Cleaning | Hero, Why Us, Services, Plans, Steps, Feature Grid, Reviews, Booking, Questions, Related Posts, Areas, CTA |
/home-commercial/ | Homepages > Home: Commercial | Primary CTA, Hero, Services, Why Us, Feature Grid, Reviews, Team Grid, Related Posts, Contact, CTA |
/home-handyman/ | Homepages > Home: Handyman | Hero, Trust Strip, Why Us, Services, Metrics, Feature Grid, Steps, Reviews, Before After, Questions, Related Posts, CTA |
/about/ | Main pages > About page | About Hero, Story, Values, Steps, Team Grid, Careers Band, CTA |
/services/ | Main pages > Services page | Page Header, Services, Industries Strip, Included, Add Ons, Questions, CTA, and Detail and Templates for every service page |
/services/{slug}/ | Services, one document per service | Included, Estimate, CTA, and Repair |
/pricing/ | Main pages > Pricing page | Page Header, Plans, Estimate, Add Ons, Rates, Included, Questions, CTA. The prices are in its Frequencies and Rate Cards fields |
/areas/ | Main pages > Areas page | Page Header, Areas, Reviews, Questions, CTA |
/areas/{slug}/ | Areas, one document per area | Hours and Office only |
/industries/ | Main pages > Industries page | Page Header, Contact, CTA, and Detail for every industry page |
/industries/{slug}/ | Industries, one document per industry | Steps, and Price |
/projects/ | Main pages > Projects page | Page Header, Before After, Reviews, Related Projects, CTA |
/projects/{slug}/ | Projects, one document per project | Price and Quote only |
/team/ | Main pages > Team page, and Team members | Page Header, Team Grid, Careers Band, CTA |
/careers/ | Main pages > Careers page | Page Header, Open Roles, Values, Steps, Questions, Application, CTA |
/careers/{slug}/ | Jobs, one document per job | Pay only |
/blog/ | Main pages > Blog page | Page Header, Newsletter, CTA |
/blog/{slug}/ | Blog posts, one document per post | None |
/blog/category/..., /blog/tag/..., /blog/page/... | Made from Blog posts | None |
/guarantee/ | Main pages > Guarantee page | Page Header, Trust Strip, Compliance, Steps, Questions, Guarantee Claim, CTA |
/faq/ | Main pages > FAQ page | Page Header, Questions, CTA |
/contact/ | Main pages > Contact page | Page Header, Contact, Contact Options, Questions, CTA |
/book/, /book/thanks/, /how-it-works/, /reviews/, /gift-cards/, /referral/, /elements/, /components/, legal pages | Other pages, one document per page. The quotes on /reviews/ are in Reviews | The same list for every page: use the sections that page shows |
| 404 | Sections > Not found section, and Interface labels | None |
On Areas, Projects, Jobs, Industries, and Reviews, this list also holds parts of the entry that aren’t sections, such as Hours or Reply.
Homio’s Studio has no Page options group. Each document’s page fields sit with its other fields: Meta Title and Meta Description on most pages, Draft on most documents (not the homepages), and on Other pages and the three extra homepages, Robots and Exclude From Sitemap. Exclude From AI is only on Other pages. Header Layout is only on those three homepages, and Footer Layout is on those homepages and Other pages.
New Entries
Use the + button in Services, Areas, Industries, Projects, Reviews, Blog posts, Authors, Team members, Jobs, and Other pages. The header menu doesn’t pick up a new service or area, so add its link in Menus. See Menus.
A new entry with only a title won’t break the site, and it builds. Its card or page shows what you filled in, and images and other fields stay empty until you add them, so fill them in before you publish. We tested this in the bundled demo content, not on a real project.
Sections
Each section is one document per language, under Sections. Open its Section content row to edit it. Every page that shows it uses this content, unless the page changes it under Sections on this page.
| Section | Where it appears |
|---|---|
| About hero section, Story section | /about/ |
| Add ons section | /pricing/, /services/, service pages |
| Announcement bar | Above the header on every page. It ships off |
| Areas section | /areas/, area pages, /home-cleaning/ |
| Before after section | /home-handyman/, /projects/, service, area, industry, and project pages |
| Blog list section | /blog/, its pages, and category and tag pages |
| Booking section | /book/, /home-cleaning/ |
| Call to action | Above the footer, on pages that turn it on |
| Careers band section | /about/, /team/ |
| Clients | Commercial service pages, and the logo row of the reviews spotlight layout |
| Compliance section, Guarantee claim section | /guarantee/ |
| Contact options section | /contact/ |
| Contact section | /contact/, /, /home-commercial/, /industries/, industry pages, /gift-cards/, /referral/ |
| Cookie consent | The cookie banner on every page |
| Estimate section | /pricing/, service pages |
| Feature grid section | /home-cleaning/, /home-commercial/, /home-handyman/ |
| Hero section, Why us section, Related posts section | All four homepages. Related posts also shows under each blog post |
| Included section | /pricing/, /services/, /how-it-works/, service and industry pages |
| Metrics section | /, /home-handyman/ |
| Newsletter section | Blog list pages and posts |
| Not covered section | Repair service pages |
| Not found section | 404 pages, /book/thanks/ |
| Open roles section | /careers/ |
| Plans section | /pricing/, /home-cleaning/ |
| Questions section | Most pages, including /faq/, /contact/, /book/, and /pricing/ |
| Reviews section | All four homepages, /reviews/, /areas/, /projects/, service and area pages |
| Service hero section | Service pages |
| Services section | All four homepages, /services/, service, area, and industry pages |
| Steps section | /, /home-cleaning/, /home-handyman/, /about/, /how-it-works/, /guarantee/, /careers/, /gift-cards/, /referral/, service and industry pages |
| Team grid section | /team/, /about/, /home-commercial/ |
| Trust strip | /home-handyman/, /book/, /how-it-works/, /guarantee/. Its rating also feeds the hero and reviews |
| Values section | /about/, /how-it-works/, /careers/ |
To hide a section, use its Enable field. To change its look, use Options > Layout. /elements/ previews every layout, and its notes still name the file paths of the Astro edition.
Site-Wide Content
| Location | What’s in it |
|---|---|
| Menus | Header menu, with Dropdown items and Mega menu columns, and Footer columns. Each language has its own. See Menus |
| Interface labels | Buttons, labels, form messages, and footer copy, as a list with a search box. There are more than 500. Each language has its own |
| Site settings | One for the whole site, below the languages: Site, Business, SEO, Settings, Opengraph, Head for analytics tags, and Social |
Settings holds the header and footer layouts (Layout), Navigation Button, Mobile Action Bar, Copyright, Subscription, Theme Credit, Page Actions, Smooth Scroll, Color Scheme, Cookie Consent, Estimator, Booking, Contact Form Action, and Contact Form Provider.
Site settings apply when the site builds. While npm run dev:all runs, they apply when you publish them, and the page reloads. They don’t change as you type, and click-to-edit doesn’t reach them, so change them in their form. Click-to-edit also doesn’t reach option values, links, icon names, hours, interface labels, or images set as a CSS background.
Plans And Attributes
At the time of writing, Sanity’s free plan allows 2,000 attributes, one for each distinct field path in your content. Homio’s demo content, with its images, measured 1,681 in our test project, read from Sanity’s own count after importing it and using Live preview. It fits, with 319 left.
To stay there, labels are one searchable list, a section’s fields sit in one row, and images have no crop or hotspot option. Adding entries, pages, and text costs nothing. New field names use more, and so do deeper menu levels. You can see your own number in Sanity’s project settings, under Usage. Sanity’s pricing page has the current limits.
Online Preview
Click-to-edit and draft preview work out of the box on your own computer, with npm run dev:all. To use them online, your editors need a second copy of the site running as a small Node.js server, because drafts can’t be shown from static files. A static host can’t do this. See Sanity for the steps. Without a preview server, editors online can still edit in the Studio’s forms and publish.
What We Tested
On this theme: the demo content imported into a real Sanity project, Live preview, and the preview server running on localhost.
Not tested on this theme:
- Any online host, a deployed Studio, or a webhook from end to end.
- Netlify or Vercel functions, which the preview server doesn’t support.
npm run setupall the way through, importing from the unzipped zip, and adding a language.
Try these on your own project before you rely on them.
What Stays In Code
These change how the site is built, not what it says:
- The page routes and the order of sections on a page:
src/pages/[...lang]/. - Section and component design, colors, type scale, and fonts.
- The list of languages:
src/config/language.json. - Favicons, the language settings, and the collection folder names in
config.toml. - The layout switcher settings, and the list of sections shown on
/elements/. - The AI crawler lists. The on and off switches are in Site settings.
- Which sections and fields exist. To add one, see
SKILLS.md.
Do It With AI
I use the Sanity edition. Tell me where to edit [TEXT OR SETTING] in the Studio: the language entry,the document, and the field. If it comes from a section document, say which pages will change, andhow to change it on one page only. Don't change any files, and don't print anything from .env.