Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,075 of 9,075 pages
About the help in other languages
All help pages

Choosing a design or theme

Three ways to get a design for your site - use a shipped theme, adapt one in your own extension, or build your own - with what each costs in work and upgrades, and how to switch a siteaccess to a design.

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/creators/website-creators/choosing-a-design-or-theme.md

On this page

Choosing a design or theme

This page is for website creators who decide how their site will look. In Exponential a design is a directory of templates, stylesheets, images and scripts; a theme is a design packaged as an extension. You can use a theme as it is, adapt it, or build your own. This page compares the three and shows how a siteaccess is pointed at a design.

Contents

  1. Three ways
  2. The themes that ship
  3. Adapting a theme the safe way
  4. Your own design
  5. Pointing a siteaccess at a design
  6. Decision checklist

Three ways

WayWorkUpgradesChoose when
Use a shipped theme as it isleast: settings onlyyou get the theme's updates with Composerthe theme's look and classes fit
Adapt a theme in your own extensionsome: overrides of the templates you changethe theme updates underneath; your overrides stayyou want the theme's structure with your brand
Build your own designmost: every template you needonly your own codethe look is specific, or you build on the layouts editor

The themes that ship

Theme (extension)Design nameWhat it isRead
sevenx_themes_simplesimplethe light, responsive public design of the default installation; header with multi-level menu and cart, article, blog, gallery, product and basket templatessevenx_themes_simple
ezwebinezwebinthe classic Website Interface: articles, blogs, events, forums, galleries, products, RSS and shop pagesezwebin
ezdemoezdemothe design with demo contentezdemo
sevenx_themes_mediamediathe media site design used with the layouts editorLayouts
ezflowezflowblock-based pages of the classic flow extensionezflow

sevenx_themes_simple and ezwebin share the ezwebin classes, so content moves between them without changes.

Adapting a theme the safe way

A theme installed by Composer is replaced on every update. Never edit its files in place (sevenx_themes_simple, "Use it"). Instead:

  1. Create your own design extension, for example extension/mysite_design/ with design/simple/templates/ (the same design name as the theme) and settings/design.ini.append.php:

    <?php /* #?ini charset="utf-8"?
    [ExtensionSettings]
    DesignExtensions[]=mysite_design
    */ ?>
  2. Activate it before the theme, so its files are found first:

    # settings/override/site.ini.append.php
    [ExtensionSettings]
    ActiveAccessExtensions[]=mysite_design
    ActiveAccessExtensions[]=sevenx_themes_simple
  3. Copy only the templates you change into your extension, keeping their paths, and change them there.

  4. Add your stylesheet to [StylesheetSettings] CSSFileList[] in your extension's design.ini.append.php (Stylesheets and scripts for your site).

  5. Clear the caches for new template paths (php bin/php/ezcache.php --clear-id=template-override --allow-root-user and --clear-tag=template).

Why it works: designs are searched in extension order, and the first file found wins (Designs, siteaccesses and the design fallback chain, Extension loading order).

Your own design

Start from a design with nothing in it and let the standard design answer everything you have not written yet:

extension/mysite_design/
├── design/mysite/
│   ├── templates/pagelayout.tpl        the frame of every page
│   ├── override/templates/full/        templates per class, chosen by override rules
│   ├── stylesheets/
│   ├── images/
│   └── javascript/
└── settings/
    ├── design.ini.append.php           DesignExtensions[]=mysite_design, CSSFileList[], JavaScriptList[]
    └── siteaccess/<site>/override.ini.append.php

Write the pagelayout first (The pagelayout: your site's frame), then one full and one line template per class (Template overrides for site builders).

Pointing a siteaccess at a design

# settings/siteaccess/<site>/site.ini.append.php
[DesignSettings]
SiteDesign=mysite
AdditionalSiteDesignList[]
AdditionalSiteDesignList[]=simple

SiteDesign is searched first, then each AdditionalSiteDesignList[] entry, then standard (StandardDesign in settings/site.ini). Check what is in effect:

php bin/php/console exp:ini where site/DesignSettings/SiteDesign <site>

Decision checklist

  • To do: Do the shipped theme's classes fit the content model? If not, plan your own templates.
  • To do: Is right-to-left needed? Check the theme's stylesheets (Right-to-left sites).
  • To do: Does the theme meet your accessibility target? (Accessibility for site builders)
  • To do: Who updates the theme, and how do you test an update before it goes live?
  • To do: Is the design in Git, in your own extension, not in design/ of the installation?

Become an Exponential Partner

Partners share their information, provide funding, contribute back and develop the products with us, and that is how Exponential grows. A partner website and dashboard are planned for mid-2027: please become a partner today to speed up our growth rate and land new features faster.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x