# Theme extending

This documentation section is yet to be updated and it is about proper ways to extend Zero One theme and make something super powerful.

## Theme files customization

Because Zero One is a theme made as a [plugin](https://www.one.thezero.club/guide/installation/folder-structure#from-version-4-0-0-zero-one-has-become-a-plugin), you can override every plugin file with the same name and file in the site/theme folder. But it must be in the same folder structure as in the plugin.&#x20;

#### Examples:

* **site/theme/blueprints/site.yml** overrides **site/plugin/zero-one/blueprints/site.yml**
* **site/theme/snippets/header/navbar.php** overrides **site/plugin/zero-one/snippets/header/navbar.php**
* **site/theme/templates/article.php** overrides **site/plugin/zero-one/templates/article.php**
* **site/theme/controllers/contact.php** overrides **site/plugin/zero-one/controllers/contact.php**
* and so on

### Visual example:

**File in Theme folder `site/theme/snippets/footer.php`**

📁 site/

— 📁 theme/

—— 📁 snippets/

——— 📄 `footer.php`

**Overrides Zero One plugin file `site/plugins/zero-one/snippets/footer.php`**

📁 site/

— 📁 plugins/

—— 📁 zero-one/

——— 📁 snippets/

———— 📄 `footer.php`

So you can copy a file from the `site/plugins/zero-one` plugin, to the relative folder inside `site/theme/` folder, change it, extend it, and safely update Zero One to new versions without worry. Your changes will stay untouched. Like a WordPress child theme, but more powerful.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://www.one.thezero.club/guide/theme-extending.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
