ThemesThemes are a collection of template files styled with CSS and/or Javascript files. A theme is just a extension which only provides theme templates. So if you want to create a theme, then you just create a extension.
Theme extensions should begin with th_ as extension key. Examples:
All following templates should be stored in your extension template folder:
inc/template/<extensionKey>/
Your can find here more path definitions and informations about templates.
Please note: Almost all path specifications in tempaltes are relative to inc/template/ starting without /.
A layout is the basic layout of a website. A theme contains normally more than one layout. For example a layout for a design with startpage, a layout for a normal page and maybe a layout without a subnavigation.
Layout contains furthermore slots which represent a area in your layout which can be managed by the user.
A content template is a regular template for each content element. You can define new content templates, when you want to style or add static HTML to a content element. For example if you want that a content element have a border bottom, or border around, or ol/li list elements inside it has a different style as in other content elements, or just a margin. Just use it when you want to style the content inside of an content element.
A navigation template is a regular template for navigation element. If you want that user defined navigation should be styled in your theme, then you should create navigation templates for the user.
If you use or create plugins, then they normally loads templates. This templates generates the HTML for the plugin output. Good practice is that every plugins should use templates, so that a designer can adjust a plugin output of a extension by creating a new template and choose this in the plugin properties or edit the used template.
Special Setting
You can extend the Class-properties on some elements while editing content in the WYSIWYG-Editor. To add such classes you can add css classes to a slot for the WYSIWYG. In this way you can also change the style within the WYSIWYG in each slot.
A property is a ka.field on domain level. If you define for example a property with id 'title' and label Title it will displayed on the tab 'Theme' under each domain. Your templates can use this values to display them or control some outputs. For example: Pagetitle, Footer-Deposit, Footer-Navigation, Footer-Text. With this, you give users the ability to change simple layout contents without going to the template files itself. |
What is Kryn.cms ?
Administrator
Developer
|