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

Module 7: Packaging a theme

The seventh module of Theme design. Learners complete their theme's metadata, activate and order it safely, export it as an .ezpkg, and put it under Git with a composer.json. 3 hours 10 minutes.

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/trainers/theme-designers/module-07-packaging-a-theme/README.md

On this page

Module 7: Packaging a theme

A theme is only useful to others when it can be installed, identified and updated. In this module learners turn training_theme into something they could hand over: metadata that agrees in every file, a README that tells an installer how to switch it on, a clear split between the theme's settings and the installation's, an .ezpkg export, and a Git repository of its own with a composer.json.

At a glance

CourseTheme design
Duration3 hours 10 minutes (with one 10-minute break)
Lessons4
LevelIntermediate

Lessons

LessonDurationWhat learners do
Lesson 7.1: The theme's metadata45 minutesMake ezinfo.php, extension.xml and LICENSE agree; find the theme on the About page
Lesson 7.2: Activating a theme and the loading order45 minutesDeactivate and activate on Setup > Extensions with a review; document SiteDesign; note an <extends> block
Lesson 7.3: A Composer package or an .ezpkg45 minutesChoose how to ship, export the theme with ezpm.php, inspect the archive, switch export off
Lesson 7.4: A theme under Git, with a composer.json45 minutesStart a repository in the extension folder, commit with prefixes, write and validate composer.json

Preparing this module

  • Every learner works on their own installation: lessons 7.2 and 7.3 change ActiveExtensions[] and package.ini.
  • xmllint (libxml2 tools), Git and, if possible, Composer installed on the learner machines or the training server.
  • ezpm.php in the installation root of the lab; run php ezpm.php help once on a copy of the lab.
  • Agree with the group on a made-up Composer vendor name for the course (lesson 7.4) and on a course e-mail address at example.invalid for Git commits.

Timing plan

PartMinutes
Lesson 7.145
Lesson 7.245
Break10
Lesson 7.345
Lesson 7.445
Total190

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