[en] Theme package structure
[en] A theme is a folder with this structure. Only theme.json and templates/page.html.twig are required.
my-theme/
├── theme.json the theme manifest (required)
├── templates/
│ ├── page.html.twig every topic page (required)
│ ├── base.html.twig a shared page frame the others extend
│ ├── portal.html.twig the portal page
│ ├── search.html.twig the search results page
│ └── partials/ smaller templates that others include
│ └── header.html.twig
├── assets/ stylesheets, scripts, images and fonts
│ ├── css/main.css
│ ├── js/theme.js
│ └── img/logo.svg
└── i18n/ translations of the theme's own text
├── en.json
└── de.json[en] Folders under templates/ and assets/ can have any name and any depth.
[en] Create the ZIP file
[en] Compress the contents of the theme folder, not the folder itself, so that theme.json is at the top of the ZIP file.
[en] macOS: open the theme folder, select everything in it, and choose Compress.
[en] Windows: open the theme folder, select everything in it, and choose Send to > Compressed (zipped) folder.
[en] If you compress the folder itself, Paligo still accepts the theme, but shows a warning. If the files are more than one folder deep, the upload is rejected.
[en] Files that your computer adds are ignored and don't need to be removed: __MACOSX folders, .DS_Store, files starting with ._, Thumbs.db and desktop.ini. So are .git folders and .gitignore, .gitattributes, .gitkeep and .gitmodules files.
[en] Limits
[en] Limit | [en] Value |
|---|---|
[en] Size of the ZIP file | [en] 20 MB |
[en] Size of the files when unzipped | [en] 100 MB |
[en] Number of files and folders in the ZIP file | 5,000 |
[en] Allowed file types
[en] A theme can only contain files with these extensions:
[en] .twig .css .js .json .svg .png .jpg .jpeg .webp .woff2 .ico .txt .md .map
[en] If the ZIP file contains any other type of file, the whole upload is rejected. A theme can never contain .php files.
[en] These are also rejected: symbolic links, two files with the same path, and paths that start with / or a drive letter or that contain ...