在网站上实现自定义功能的最佳实践

时间:2011-08-30 02:51:40

标签: drupal

我想知道具有Drupal经验的人是否可以建议以下情况下的最佳做法。我认为它们都是您构建的任何网站的常见任务。

  1. 在首页显示特定内容类型的自定义HTML(例如,仅显示链接和标题)。
    我应该只为此构建一个模块吗?

  2. 将登录表单HMTL(包括输入,标签等)自定义为与默认登录块非常不同的内容。 再一次,另一个模块?

  3. 格式化某些内容类型的节点视图;例如:显示其他字段值。我有一些Joomla经验,有了它,很容易覆盖你主题的模板。

  4. 但是使用Drupal,似乎HTML在PHP文件上是硬编码的,并且使用模板的东西很少。或者我错过了什么?

3 个答案:

答案 0 :(得分:1)

  1. 您应该创建一个视图(来自“视图”模块),并为此创建显示“块”。您可以在以后的网站上使用此块。在您的视图设置中,您可以选择要显示的内容和方式。

  2. 这取决于你想要放在那里。如果您只放置一些静态文本,则更改主题可能是一种解决方案。但是,有点臭。您应该做的是创建一个模块使用hook_form_FORM_ID_alter并将两个 - 字段添加到您的表单,并使用代码来使用用户添加的值。

  3. 在自定义主题中更改此内容类型的模板;或者使用Panels模块 - 这里你很好introduction;或使用Display Suite模块 - 它几乎可以像创建模板一样工作

答案 1 :(得分:0)

html是在php文件中,但它还能去哪里? Drupal还有模板覆盖系统。主题的定制通常可以单独使用。

至于你的问题(还有其他选择)

  1. view /块中加载内容类型,在主页上以列表格式显示。

  2. 为css更改创建自己的theme。为。创建自定义tpl.php 布局和div命名等。

  3. 与上述相同。

  4. 创建一个新模块并没有什么坏处,但通常没有必要,除非你想采取多步形式。

答案 2 :(得分:0)

您可以同时使用Views& Panels为了实现您上面提到的内容。

例如,Panels为您提供了使用您自己的内容覆盖主页的选项。此内容可以使用视图进行组织。

来自drupal.org:

"视图模块为Drupal网站设计者提供了一种灵活的方法来控制内容的列表和表格(视图1中的节点,几乎是视图2中的任何内容)的呈现方式。"

" Panels模块允许站点管理员为多种用途创建自定义布局。它的核心是一个拖放式内容管理器,可让您直观地设计布局并将内容放置在该布局中。"