Drupal 允许的节点类型自定义下拉菜单

Posted

技术标签:

【中文标题】Drupal 允许的节点类型自定义下拉菜单【英文标题】:Drupal permitted node types custom dropdown 【发布时间】:2011-10-10 08:01:01 【问题描述】:

我正在寻找一些关于如何获取一个数组的建议,其中包含指向当前登录用户允许创建的节点类型的链接列表。

我的客户希望这些链接填充位于用户个人资料页面上的自定义下拉列表。

以防万一我无法说服他放弃,我想要一些技巧/信息继续下去。

【问题讨论】:

什么版本的 Drupal?您将在哪里实施? 【参考方案1】:

您必须创建一个自定义模块。如果您正在创建自己的模块,这个简短的 sn-p 将为您提供一个数组 ($types),其中包含登录用户可以创建的内容类型的链接 (D6)。如果用户无法创建任何内容类型,它将显示一条消息:

<?php
  $types = array();
  foreach (node_get_types('types', NULL, TRUE) as $type) 
    if (node_access('create', $type->type)) 
      $types[$type->type] = l($type->name, 'node/add/' . str_replace('_', '-', $type->type));
    
  
  if (count($types) == 0) 
    drupal_set_message('You cannot create any content types!', 'warning');
  
?>

【讨论】:

以上是关于Drupal 允许的节点类型自定义下拉菜单的主要内容,如果未能解决你的问题,请参考以下文章

自定义/更改下拉菜单文本?

Drupal 视图和暴露的过滤器下拉菜单

C#下拉菜单最后一项自定义的实现

jq自定义下拉菜单,当用户点击非自身元素(下拉菜单)本身时关闭下拉菜单

在 Wordpress 中使用 ACF(高级自定义字段)显示自定义帖子标题的下拉菜单

MFC 在自定义工具栏上添加有下拉菜单的按钮。