首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么drupal主题这么难?有什么方法可以简化它或者更快地学习吗?

为什么drupal主题这么难?有什么方法可以简化它或者更快地学习吗?
EN

Stack Overflow用户
提问于 2010-09-14 04:23:43
回答 6查看 2.3K关注 0票数 5

我已经用PHP编写了4年的代码,甚至我都觉得它很复杂,很难理解。我不知道他们期望设计师如何管理主题。

我知道基本的主题化,tpl文件的主题化,视图模板,设想模板等等。但是,当我输入template.php文件时,我会迷路。

我需要为自定义内容类型设置一个节点输入表单的主题。我绞尽脑汁地看了7-9篇教程,但它还是没有结合在一起。我理解为什么模块构建会很复杂,因为大多数使用模块的人都是开发人员。

然而,即使是开发人员也无法理解主题化,这肯定是过度设计的!

也许是我的错,也许我没有好好学习德鲁帕尔。在这种情况下,是否有一个逐步成为德鲁巴大师的系统?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2010-09-14 07:08:53

如果你只知道基本的php,主题其实就没那么难了。您有3种修改标记的方法,css和js,您应该能够处理。

  • 模板文件。通过在主题化中创建模板文件并正确命名它,它将优先于其他模板文件,因此您可以为视图、节点等创建自定义标记。通过为noce类型创建模板,您可以在任何其他地方打印出cck字段,而不是使用$content。您所需要的只是节点对象。
  • 放置在主题中的预处理函数将使您有可能添加或更改模板中使用的变量。您可以将函数命名为钩子:页面模板的yourtheme_page、节点模板的yourtheme_node等等。在这里,您可以创建一些自定义逻辑或修改,以帮助模板更加干净,只需处理变量的打印。
  • 主题函数。您可以覆盖主题函数来更改所使用的标记。您只需要创建一个名为yourtheme_[theme_function_name]的函数。您不需要理解多少php就可以做到这一点。通常,您只需复制原始主题函数,并对其进行一些修改以获得所需的标记。

有了以上这些,你可以完成你所需要的90%-95%的事情。表单有点特别,因为在Drupal 6中,您不能(很容易)在主题中更改它们。相反,您想要的是创建一个小模块并使用hook_form_alter,它允许您修改表单、按钮上使用的文本等。这在Drupal 7中会被更改,这将更容易实现主题。

所以,它并没有那么复杂,只需使用上面描述的三个基本工具。棘手的部分可能是命名您的函数和模板,但发展themer可以帮助您做到这一点。您使用的另一个工具是开发,它可以帮助您打印出变量,以便检查它们并查看节点上有哪些可用的fx字段。

票数 11
EN

Stack Overflow用户

发布于 2010-09-14 07:18:37

也许你应该得到一份前端Drupal的副本。

在我看来,Drupal主题化并不难,只要你把你的头脑集中在模板、重写、.info文件和预处理函数等概念上。这些事情与php技能没有直接关系,它都是关于理解系统的。

有趣的是,您是一个themer,但是您只谈论php,而不是CSS和HTML。根据我的经验,许多主题任务都可以使用CSS完成,甚至无需接触php。

最后,我不知道您是否已经在使用基础/起始主题 (如禅宗创世纪)。我建议使用一个基本主题,并实现您自己的设计作为一个子主题。

票数 6
EN

Stack Overflow用户

发布于 2010-09-14 10:38:21

大多数人都会得到“啊哈!”当主题突然开始有意义的时候。

我认为,对于经验丰富的PHP开发人员来说,这可能更难,因为您必须克服许多在普通PHP中没有意义的概念(“函数在适当的时候被神奇地调用了.因为它的命名方式?!”)

@googletorp的答案相当全面,所以我只想补充一些实用的技巧,它们帮助了我:

1)尝试构建一个实现自己的主题输出和简单挂钩的模块。当您看到模块实际上是如何调用和使用它们时,钩子和主题函数就更有意义了。

2)自由使用devel模块,特别是主题注册表菜单(注意添加新主题函数时它是如何变化的)、“呈现”选项卡以及dpm()dvm()函数

3)买一本关于Drupal主题的老旧死树书。如果你已经知道你在做什么,那么在线文档是非常出色的,但是如果你不确定你在寻找什么,你可能会非常困惑。

4)倒空你的杯子。在主题层面,PHP实际上只是用于简单的逻辑和语法--几乎所有的实质内容都是由Drupal函数处理的。试着像Drupal开发人员而不是PHP开发人员那样思考(也就是说,不要仅仅因为构建了一个做同样事情的普通PHP站点就认为自己知道如何做某事),你就会过得更轻松。

坚持下去!一旦你搞清楚了,主题系统实际上是很容易使用的。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3706118

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档