Personal tools
You are here: Home Plone 教程 DIYPloneStyle: 为plone2.1创建定制外观 组织皮肤的层

组织皮肤的层

Document Actions
关于门户皮肤(portal_skins)工具机制的内部原理。

chenq

本指南将会教会你,如何以DIYPloneStyle为基础,为plone2.1创建一个定制的样式产品,它将利用新的资源注册表机制来注册资源,并向门户添加一个皮肤选择项。 (声明:本指南英文版权归原作者所有,中文译文归"润普公司"(http://www.zopechina.com)所有,未经允许不得用于商业用途)
Page 5 of 9.

为了让您更好的理解皮肤工具(Skins Tool)以及它的层间遍历机制,我建议您阅读由Andy McKay著写的官方Plone Book第七章,特别是在皮肤中使用层 以及使用portal_skins管理皮肤。这里给出的联接不是官方的,但是据我所知它是唯一一个公开可用的直接为这本书提供HTML版本的网站,并且它还是即时更新的。 这两部分主要聚焦于TTW方式的Plone定制工作。尽管对于学习Skins Tools的层间遍历机制而言,这是一种很好的方式,但是我们知道直接在ZMI中进行工作,并不适合为Plone构建一个完全图形化的环境。

当在文件系统中构建一个皮肤产品的时候,概念上都是一样的:
安装函数首先会创建一个皮肤,它包含了所基于皮肤的所有层,然后附加上产品所特定的层。产品特定的层就是指在文件系统中位于产品skins/目录下的那些文件夹。(*)

实际上,如果您的产品仅仅是通过添加几个样式表和替换图形化UI元素来定制一个Plone站点,那么您只需要向您的皮肤选择项添加一个层就足够了。(**)

但是在某些情形下,拥有多个层也是很有用的,主要用于组织分类皮肤元素,如图片,定制(customizations),样式表等等。

(*) 任何位于您的产品skins/目录下的文件夹都将被注册为皮肤工具(Skins Tool)中的一个FSDirectoryView, 然后会被添加到您的皮肤选择项的层中。只有那些名字以 '.' 开始的文件夹,以及名为CVS或者{arch)的文件夹除外(这是被硬编码到 Products.DIYPloneStyle.Extensions.utils.getSkinsFolderNames()中的)。

(**) 如果DIYPloneStyle提供了超过一个皮肤层(也就是说如果它的skins/文件夹包含了不止一个文件夹),这仅仅是为了使得我们在Get Started部分的删除例子步骤更容易些。

by chenq — last modified 2005-11-14 20:43
Contributors: 原作:david convent, 翻译:陈穹
GFDL

Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards: