Drupal文档教程翻译 - 覆写输出 - 覆写详解(7)
本站原创编译,转载请给面子,尊重劳动果实,欢迎交流指正。
决心不再迟到,也就早的有些过分;吃一颗我擦勒闹不住菇,俳句之神附体,进入Drupal文档中文翻译时间。前面一篇中,我们了解了怎样将输出来源由函数转换为模板,今天来看这档“覆写详解”的最后一个小话题,主题注册表。
Drupal的主题注册表可以对主题中的数据,例如hooks及其处理方法等信息进行缓存。对于多数开发者来说,主题注册表并不需要被直接操作,只需要记得在添加或移除主题函数或模板之后情况注册表中的缓存即可;而修改操作不需要执行这个步骤即可立见功效。
在之前的文档中曾经提到过,大致有三种方法可以清空主题注册表的缓存:
- 进入“管理后台 > 站点设置 > 表现”(Administer > Site configuration > Performance)中点击“清空缓存数据”(Clear cached data)按钮。
- 使用Devel模块的话,可以直接使用它提供的“清空缓存”(Empty cache)。
- 使用API drupal_rebuild_theme_registry。
主题注册表提供的缓存机制在幕后有效的加快了模板及输出的处理;主题所使用的主题引擎会自动的注册那些当前主题所用到的hook。
在一些特殊情况中,我们需要直接手动处理一下主题注册表,例如当前主题需要一个尚未注册的hook,而该hook还没有在底层(系统核心、模块、主题引擎层面)执行过。
几点需要注意:
- 有关主题注册表的更多信息可以参见The theme registry for special cases,后面会做这篇的翻译。
- 不要将主题注册表的概念与主题的.info文件搞混淆。
- 我们一直以PHPTemplate作为默认引擎来说事,其他模板引擎也是同样的机制。对于那些不使用引擎的主题,必须手工进行主题注册,详情可以参见API中的phptemplate_theme。
译者:Viiiix7210
如需转载,请注明官方英文文 档及本人译文的出处,谢谢。查看英文原文: About overriding themable output
| < Prev | Next > |
|---|
