在一个模板里引用文件
WordPress的缺省主题 (基于Michael Heilemann’s Kubrick (http://binarybonsai.com/kubrick/ 为 WordPress 1.2做的版式) 就是关于用户请求是如何映射到模板提供了一个好例子.)
代码 <?php bloginfo('template_directory'); ?>会在模板的输出中插入模板目录的URL信息. 你可以在这个输出里扩展任何其他的URI来引用主题里的文件,
代码 <?php bloginfo('stylesheet_directory'); ?>会将当前用来输出的主题里的样式表的目录的URL输出. 你可以在这个输出里扩展其他任何的URI信息去引用你主题里的文件,特别时被用于样式的.
常量TEMPLATEPATH 是当前主题的模板的绝对路径(结尾没有 / 符号).
注意样式文件里的URI是相对于样式文件的,而不是相对于引用样式的文件. 这个省去了在php代码里引用CSS需要指定目录的麻烦. 例如,如果你的主题里有个 images/ 目录,你在CSS里只需要指定相对于这个目录的地址.
h1 { background-image: URL(images/my_background.jpg); }
用这种风格的URI在模板里引用文件是个好的做法,因为,这样你的模板就不会依赖于绝对路径.
[edit]定义个性模板
使用WordPress插件系统根据你自己的习惯标准去定义额外的模板是可以的.这些高级的特性可以使用 template_redirect action hook来实现. 在 Plugin API 参考里你可以发现更多的相关信息..
当开发主题时,你应该记住,你的开发的主题应该和其它的你(或者其他的用户)将决定安装的其他插件能够兼容的工作. 插件通过”Action Hooks” (see Plugin APIfor more information)给WordPress增加功能. 大部分的Action Hooks都在WordPress的核心PHP代码里,所有你不需要其他任何额外的标签就能让它们工作. 但是一些Action Hooks需要在你的主题里表现在前面,这样你的插件能够在你的header, footer, sidebar, or in the page body里直接的显示信息.
这些是你需要去包含的一下特殊的模板Action Hook标签的清单:
- wp_head
- 在主题的 HTML <head>里; header.php 模板. plugin使用例子: 加入 javascript 代码.
- Usage: <?php do_action('wp_head'); ?>
- -or- <?php wp_head(); ?>
- wp_footer
- 在主题的 “footer”里; footer.php 模板. 插件使用例子:加入footer的底部加入php代码,这样其它部分运行完后就会运行它.
- Usage: <?php do_action('wp_footer'); ?>
- -or- <?php wp_footer(); ?>
- wp_meta
- 一般是位于主题菜单的 <li>Meta</li> 部分或者sidebar: sidebar.php 模板. 用法例子:引入一个调向的广告或者一个tag cloud.
- Usage: <?php do_action('wp_meta'); ?>
- -or- <?php wp_meta(); ?>
- comment_form
- 位于 comments.php 和 comments-popup.php里, 就在评论表单的 closing tag (
</form>
)前面. 用法例子:预览一个评论.
- Usage: <?php do_action('comment_form', $post->ID); ?>
在缺省的主题模板里,你能发现这些用法插件钩子的实际的例子.
转载请注明:夜阑小雨 » WordPress 主题制作需要注意的问题:Hooks调用