如何为分类/术语/x 页面设置主题?
虽然很容易在网上找到一些关于如何主题化其他内容(例如搜索结果)的信息,但不可能找到一篇关于如何主题化分类/术语/247页面的输出的简单文章?
我该怎么做呢?
Although it was easy to find some info online about how to theme other stuff (e.g. search results), it is impossible to find a straightforward article about how to theme the output of a taxonomy/term/247 page?
How can I do it?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
在 Drupal 6 中,您可以使用主题中的
node-taxonomy.tpl.php
和page-taxonomy-term.tpl.php
文件来模板分类页面,考虑到第二个是第一个的包装。node-taxonomy.tpl.php
的行为类似于node.tpl.php
和page-taxonomy-term.tpl.php
类似于page .tpl.php
。例如:page-taxonomy-term.tpl.php
node-taxonomy.tpl.php
嗯,最重要的部分:默认情况下
节点分类。 Drupal 不知道 tpl.php
,因此我们需要在主题的template.php
文件中将其作为模板建议引入,如下所示:还有一个
taxonomy- term.tpl.php
,关于 Drupal 7。这是一个代码示例,不要忘记使用
check_plain()
&打印输出上的check_url()
。In Drupal 6, you can make use of
node-taxonomy.tpl.php
andpage-taxonomy-term.tpl.php
files in your theme to template taxonomy pages considering that the second one is the wrapper for the first. Behavenode-taxonomy.tpl.php
likenode.tpl.php
andpage-taxonomy-term.tpl.php
likepage.tpl.php
. for example:page-taxonomy-term.tpl.php
node-taxonomy.tpl.php
Well, the most important part: By default the
node-taxonomy.tpl.php
is not known to Drupal, so we need to introduce this as a template suggestion in the our theme'stemplate.php
file, here we go:Also there is a
taxonomy-term.tpl.php
, regarding Drupal 7.It's a code sample, dont' forget to use
check_plain()
&check_url()
on printouts.分类页面并不神奇,它需要一些特殊的东西来主题化。有一个模板文件、一个预处理函数和一些主题函数,就像任何页面一样。
如果您想控制有点原始的默认分类页面的输出,您可以使用视图覆盖默认页面。然后,您可以使用视图仅显示节点预告片、执行一些自定义排序、使用寻呼机等。
如果您想做更具体的事情,您应该编辑您的问题以告诉我们您想要做什么。
The taxonomy page is not magic in any that it requires something special to theme it. There's a template file, a preprocess function and some theming functions, much like any page.
If you would like to control the output of the default taxonomy page which is a bit raw, you can use views to overwrite the default page. You could then use views to only show node teasers, do some custom ordering, use a pager etc.
If you want to do something more specific you should edit your question to tell us what you want to do.
您最好在 template.php 中使用以下代码,
因为您可以为每个 term 使用文件名,例如 node-term-YOUR-TERM-ID.tpl.php 。
如果你想让它更有效地使用:
You better use following code in template.php
Because you can use file names such as node-term-YOUR-TERM-ID.tpl.php for each term .
if you want to make it more efficient use :