drupal 中内容类型渲染的钩子是啥?

Posted

技术标签:

【中文标题】drupal 中内容类型渲染的钩子是啥?【英文标题】:What will be hook for content type rendering in drupal?drupal 中内容类型渲染的钩子是什么? 【发布时间】:2014-12-17 12:38:51 【问题描述】:

我正在建立一个旅游网站。在我的站点中,有 3-4 个模块,如旅游、别墅和酒店等。在 Drupal 中,如果我们想添加任何酒店类型的内容,那么我们必须转到 www.mysite.com/node/add/hotel 之类的链接或别墅 www.mysite.com/node/add/villa。我为别墅和酒店内容类型使用了一个名为“渲染类型”的字段。 “渲染类型”字段的小部件类型是选择列表。它的值是 1,2,3,4。现在我想写一个钩子,允许我定义关于内容类型的“渲染类型”字段的值。添加任何酒店时,渲染类型应自动选择为 1。如何编写钩子?

【问题讨论】:

【参考方案1】:

您可以使用 hook_form_alter 来做到这一点。

例子:

YOURMODULE_form_alter(&$form, &$form_state, $form_id)<br/>
    switch ($form_id) <br/>
      case 'villa-node-form':<br/>
        $form->['field_render_type'][LANGUAGE_NONE]['#options'][1] = "villa option";<br/>
        break;<br/>
      case 'hotel-node-form':<br/>
        $form->['field_render_type'][LANGUAGE_NONE]['#options'][1] = "hotel option";<br/>
        break;<br/>

    


【讨论】:

以上是关于drupal 中内容类型渲染的钩子是啥?的主要内容,如果未能解决你的问题,请参考以下文章

自动将 drupal 7 内容类型转换为代码。内容类型生成器代码?

在 drupal 8 的另一个自定义内容类型字段中使用自定义内容类型作为字段

内容类型列表中的 Drupal 更改行权重

drupal 7在ubercart 3.x中成功付款的钩子是啥

如何在 drupal 7 中构造内容类型

如何在 Drupal 的配置文件类型中将内容类型列为复选框