{{indexmenu_n>20}} ====== Templates ====== Have a look: [[english/templates]] \\ **System variables:** - $block['name'] // name: [Template name] - $block['layout'] // layout: [layout-No.] - $block['overwrite'] // settings: [default|Name of the PHP file in /template/inc_settings/template_default/] - $block["css"] // CSS file: Output into an array e.g. Array([0] => frontend.css [1] => nav_horiz_drop_down.css) - $block['htmlhead'] // Content HTML head: - $block['jslib'] // JS Library: [Lib name] - $block['jslibload'] // always load [0|1] - $block['googleapi'] // use Google Ajax Lib [0|1] - $block['frontendjs'] // load frontend.js (more for historical reasons) [0|1] - $block['jsonload'] // JS onload: [JS string] - $block['feloginurl'] // FE LoginURL: [url] - $block['headertext'] // Content header: [Content] - $block['maintext'] // Content main: [Content] - $block['footertext'] // Content footer: [Content] - $block['lefttext'] // Content left: [Content] - $block['righttext'] // Content right: [Content] - $block['customblock_XXX'] // Content custom blocks XXX [Content] - $block['errortext'] // Content error: [Content] \\ ===== Mount a static file as a template in the "main:" ===== One way to use a file on the server as a template. Thus, the editing of the template via CMS is shifted to an FTP enabled editor. **Condition:** -> [[http://www.phpwcms-docu.de/conf_inc_php_en.phtml|/config/phpwcms/conf.inc.php]] \\ * $phpwcms['allow_ext_init'] = 1; \\ In the directory **template/inc_script/frontend_init/** we store the file **template_inject01.php** with the following content: \\ In this example the template file is called **main01.php** and is stored in the directory **template/inc_script/template/**. \\ The script looks in the template block "main:" whether the text **main01.php** is entered there. (And only this one). In **main01.php** wird der Quelltext für "Haupt:" abgelegt ohne den öffnenden/schließenden PHP-Tag %%%%. In **main01.php** the source code for "main:" is passed without the opening/closing PHP tag %%%%. To speed up the query the presence of tags is not tested in the "main:" field. **This procedure should only be used in the development phase!!** \\ \\ ===== Template: Embed the fields "header:", "footer:", "left:", "right:" in "main:" ===== Normally these fields aren't useful any more, because these fields with the layout variant rendering: "custom" will not be queried. \\ With a small replacer it is however possible to merge these input fields into the field "main:". \\ We set the tags into the postions where the contents of these fields in the template "main:" will be merged. \\ * **{HEADERTEMP}** = Content from "header:" * **{FOOTERTEMP}** = Content from "footer:" * **{RIGHTTEMP}** = Content from "right:" * **{LEFTTEMP}** = Content from "left:" It may happen that some functions in the alternative fields will be processed by the system before being inserted into "main". If so, please place the instructions directly into the "main:" field. Alternatively, the RT (SHOW_CONTENT :.....} could be used. **Condition:** -> [[http://www.phpwcms-docu.de/conf_inc_php_en.phtml|/config/phpwcms/conf.inc.php]] \\ * $phpwcms['allow_ext_init'] = 1; \\ Please insert the file **template_inject02.php** with the following content into the folder **template/inc_script/frontend_init/** : \\ The self-defined "custom" blocks are addressed with (e.g. block name "BOX01" in page layout -> blocks -> custom:) $block['customblock_BOX01'] To speed up the query the presence of tags is not tested in the "main:" field. It is your responsibility to use only tags, although the corresponding content is available in alternative fields. \\ Both methods can be combined.