Core Theme Elements
This page describes how to define data in Movable Type Core Theme Element.
Template Sets
Template Sets are a collection of templates applicable to websites or blogs. You will use template sets when you create a blog and apply a theme. The ‘Theme Element’ template set is a wrapper for template set functions from Movable Type 4. For most functions - registering with the registry, running Template Refresh, etc - you can use Template Sets the same way you used previous template sets.
Please specify “template_set” as the importer attribute.
base_path
Use a relative path from the theme directory to specify the template source file’s search path starting point.
templates
Define templates. For more information, please refer to the template set documentation.
data: label: Classic Blog base_path: templates require: 1 templates: archive: category_entry_listing: label: Category Entry Listing mappings: category: archive_type: Category
Static Files
You can install theme static files in the blog directory. Create a sub-directory in the theme root blog_static directory to put the theme files in. Specify the sub-directory name in array. The importer should be “blog_static_files”.
elements: blog_static_files: component:~ data: - js importer: blog_static_files
Related Config Directive
ThemeStaticFileExtensions
This is a list of suffixes of files that are permitted as theme files. Files not included in this list are not installed when the theme is applied.
Category / Folder
Categories and folders and automatically created when you apply a theme. Specify basename as the hash key for the categories and folders to be created. The importer should be “default_categories” or “default_folders”.
Use the following fields for Category/Folder content:
label
Category/Folder display name.
children
Describe Subcategory/Subfolder recursively.
data: foo: label: The Foo children: foo_junior: label: Foo Junior
Page
Create pages on the blog when applying the theme. If there are already existing pages with the same basename or Title in the blog that you’d like to apply a theme to, this process will be skipped.
The importer should be “default_pages”. Page basename is used as a hash-key for each page.
Assign the following fields for the content of the page:
- title
- text
Main body of nthe page. - text_more
Continuation of text. - excerpt
- keywords
- status
Use integer to specify initial publish status.
1 = Draft
2 = Publish - tags
Specify multiple tags by separating each with a comma. - folder
Assign the page folder. If a folder does not exist, one will be created automatically. Use slashes to assign a deep hierarchy of folders.
data: about: basename: index title: About text: <__trans phrase="_PWT_ABOUT_BODY"> tags: @about folder: about
Settings
Specify website/blog settings. Use hash to specify blog (or website) setting fields. The importer should be “default_prefs”.
default_prefs: component: core importer: default_prefs data: file_extension: php convert_paras: 0 allow_comments_default: 0 allow_pings_default: 0
Custom Fields
Create custom fields. If there are multiple, overlapping basename or TagName fields on the current blog environment, install will be skipped. The importer should be “custom_fields”.
custom_fields: component: commercial importer: custom_fields data: list_by_step: default: 0 description: Show List by Step name: List By Step obj_type: entry options:~ required: 0 tag: EntryListByStep type: checkbox