View source for 关于创建WackoWiki主题

其他语言 ((../Deutsch/Layouts Deutsch)), ((../English/Themes English)), ((../Español/Temas Español)), ((../Français/Themes Française)), ((../Русский/Темы Русский))

{{toc numerate=1}}

Customizing the Wacko interface. 

===有哪些议题?===
file:/ap_appearance_settings_zh.png?right&500
WackoWiki允许你在不干扰主PHP代码的情况下完全改变外观 - 这是用存储在主题目录中的主题来实现的。

主题定义了你的安装中所有页面的外观,可以通过添加(或修改)配置来安装。
该发行版自带默认主题,你可以在WackoWiki的安装上看到。

要切换到另一个主题,你需要在 ((管理面板 Configuration))上做出改变。

===创建你自己的主题===
如果你想定制你的安装,最好是创建一个新的主题。

%%(info type="warning")
即使你的主题与默认的略有不同,也要通过复制它来创建一个新的主题 - 这将有助于避免在你升级到你的维基的下一个版本时意外地丢失你的修改。
%%
创建一个新的主题,最好是将旧的主题复制到新的目录中,并周到地修改复制的文件。

===新主题如何在升级中生存 ===
如果你接受了建议,没有改变现有的主题,而是通过复制创建了一个新的主题,那么升级就不会有大问题。更新脚本后,WackoWiki将像以前一样与你的个人主题一起工作。

另一个问题是,如果你想把某个标准主题的创新融入你的主题中 - 你需要一些像WinMerge这样的软件和一些耐心来做。一旦你用WinMerge跟踪了默认主题的变化,把它们纳入你的主题,你就大功告成了。

file:/theme_merge_changes_de.png

===Contents of theme files===
这些文件被分为以下几个文件夹
%%(wacko wrapper="box" wrapper_align="left" wrapper_width=500)
**theme/**
  * default/
    * appearance/
      * template/
        * footer.tpl
        * footerprint
        * header.tpl
        * headerprint.tpl
        * headerwordprocessor.tpl
      * footer.php
      * footerprint.php
      * footerwordprocessor.php
      * header.php
      * headerprint.php
      * headerwordprocessor.php
    * css/
      * default.css
      * wacko.css
      * wordprocessor.css
      * print.css
    * icon/
      * archive.svg
      * attachment.svg
      * audio.svg
      * ...
    * lang/
      * wacko.all.php
      * wacko.de.php
      * wacko.en.php
      * ...
    * readme
%%
===外观===
在主题文件夹中,有一些子文件夹,如 
  * **appearance/**: 它包含具有HTML结构的.php文件和.tpl文件,这些文件将被用于布局内容。
  * **css/**: 包含用于打印和正常布局的CSS样式表(真是令人惊讶)。一个新的布局或主题的许多工作都可以在这里完成。
  * **icon/**: 使用默认的图标是可以的,但如果你改变了CSS,也许,你也想改变图标。你的维基的标志不在这里。默认情况下,它在""/yourfolderhere/file/global/wikilogo.png""下。
  * **lang/**: 在该文件夹中,有一些次要的重要语言文件。

====配置====
在主题配置文件中,你也可以定义你自己的配置选项,并覆盖现有的选项。
##lang/wacko.all.php##
%%(php)
<?php
// theme options =========
$this->db->revisions_hide_cancel = 1;
$this->db->site_desc  = 'My Theme for WackoWiki';
$this->db->footer_inside = 0;

// ============================
$theme_translation = [
	'EditIcon' => '...',
	'' => '',
];
%%

===Template Engine===

  * ((/Dev/Projects/Templatest/Usage Usage of Template Engine))
  * ((/Dev/Projects/Templatest/Filters Pulls, Escaper and Filters))
  * ((/Doc/English/ThemeGuide 带有示例模板的主题指南))

===布局 ===
困难的部分不是实际写HTML和CSS代码,而是从概念上(在一张纸上)弄清楚所有必要的方框的行为,以创建一个特定的布局。

WackoThemes could be found here:
  * ((/Dev/Themes Themes))