Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Drupal 在网站上实现自定义功能的最佳实践_Drupal - Fatal编程技术网

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

Drupal 在网站上实现自定义功能的最佳实践,drupal,Drupal,我想知道有Drupal经验的人是否可以建议在以下情况下的最佳实践是什么。我认为这些都是你建立的任何网站的共同任务 在首页显示特定内容类型的自定义HTML(例如,仅显示链接和标题)。 我应该只为此构建一个模块吗 自定义登录表单HMTL,包括输入、标签等,使其与默认登录块完全不同。 再说一次,另一个模块 格式化某些内容类型的节点视图;例如:显示其他字段值。我有一些Joomla的经验,通过它,很容易覆盖你主题的模板 但在Drupal中,HTML似乎是在PHP文件上硬编码的,很少有东西使用模板。还是我遗

我想知道有Drupal经验的人是否可以建议在以下情况下的最佳实践是什么。我认为这些都是你建立的任何网站的共同任务

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

  • 自定义登录表单HMTL,包括输入、标签等,使其与默认登录块完全不同。 再说一次,另一个模块

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


  • 但在Drupal中,HTML似乎是在PHP文件上硬编码的,很少有东西使用模板。还是我遗漏了什么?

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

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

  • 在/block中加载内容类型,在主页上以列表格式显示

  • 创建自己的css更改。为创建自定义tpl.php 布局、分区命名等

  • 同上

  • 创建一个新模块并没有什么坏处,但一般来说,除非您打算创建一个多步骤表单之类的模块,否则不需要创建新模块

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

  • 这取决于你想放什么。若你们只放一些静态文本,改变主题可能是一个解决方案。但还是有点臭。您应该做的是创建一个模块use并将这两个字段都添加到表单中,并编写代码以使用用户添加的值

  • 在自定义主题中更改此内容类型的模板;或者使用面板模块-这里你有漂亮的;或者使用displaysuite模块——这和创建模板差不多

  • 为了实现上面提到的目标,您可以同时使用这两种方法

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

    来自drupal.org:

    “视图”模块为Drupal站点设计者提供了一种灵活的方法来控制内容列表和表格(视图1中的节点,视图2中的几乎所有内容)的显示方式。”

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