彻底改变 Drupal 7 中页面的设计
有没有办法可以在 Drupal 中完全自定义页面?我不希望显示 Drupal 标头或由 Drupal 生成的任何其他 HTML,但我希望能够访问 Drupal 功能。
Is there a way I can fully customize a page in Drupal? I don't want the Drupal header or any other HTML generated by Drupal to show up, but I want to be able to access the Drupal functions.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
基本上您需要一个新的页面模板(而不是节点模板)。这在 Drupal 7 中并不是开箱即用的,因此需要执行以下几个步骤:
第 1 步
为这个特殊主题的页面创建一个新的内容类型,将其称为“特殊”或其他任何名称...
第 2 步
将此代码添加到您的 template.php 文件中。 (将下面代码中的“yourthemename”替换为您主题的机器名称,即/sites/all/中主题文件夹的名称)
第3步
在主题文件夹中创建一个新的页面模板,并以新的内容类型命名。例如:
page--special.tpl.php
,“special”是内容类型的名称。定制吧!第 4 步
清除缓存
第 5 步
使用新的内容类型创建新的内容 - 它将出现在新页面模板的设计中。
最终结果就像拥有一个完全独立的主题,但仍保留在现有主题内。
请注意,我写了一篇关于如何在 Drupal 6 上执行此操作的博客文章,但如果您阅读评论,会发现一些想法和链接如何在 D7 上执行此操作,但基本上就是我在这里所说的。
http://highrockmedia.com/blog/creating-custom -内容类型页面模板-drupal-php
Basically you want a new page template (as opposed to a node template). This does not quite work out of the box in Drupal 7 so there are a few steps:
Step 1
Create a new content type for this specially themed page, call it "special" or whatever...
Step 2
Add this code to your theem's template.php file. (Replace "yourthemename" in the code below with your theme's machine name, that is to say the name of your theme folder in /sites/all/)
Step 3
Create a new page template in your theme folder and name it after the new content type. so for example:
page--special.tpl.php
and "special" being the name of the content type. Customize away!Step 4
Clear cache
Step 5
Create a new peice of content using your new content type -- it will be in the design of your new page template.
The end result will be like having a completely separate theme but staying within your existing theme.
Note, I wrote a blog post on how to do this for Drupal 6 but if you read down the comments, there are ideas and links how do this for D7 but basically what I have said here.
http://highrockmedia.com/blog/creating-custom-content-type-page-templates-drupal-php
您可以运行替代的
page.tpl.php
文件。例如。page--front.tpl.php
不确定这是最好的方法,但它会起作用。您可以从文件中删除不需要的任何内容,因此它与其他页面完全不同。
You can run an alernative
page.tpl.php
file. Eg.page--front.tpl.php
Not sure it's the best way to do this but it will work. You can strip anything you don't want out of the file so it is totally different to other pages.
Drupal 非常灵活:
Drupal is pretty flexible: