2009-09-30 66 views
1

如何在我的“创建内容”页面上对内容类型进行分类/组织?我正在用CCK运行Drupal 6.x。我有很多自定义内容类型,而且我的“创建内容”页面变得有点笨拙,因为它按字母顺序列出了它们。我想按类别来组织它们,从而使用户能够看到:如何分类Drupal的“创建内容”页面上的内容类型(/ node/add)

Create Content 
    Reports 
     Report Type A 
     Report Type B 
    Events 
     Event Type A 
     Event Type B 

我不想与核心一塌糊涂,但是别的(自定义模块,主题化,现有的模块功能)是公平的游戏。我希望我失去了一些东西很容易,因为这似乎是一个明显的要求,但所有我能找到的Drupal站点被这些没有答案的问题:

回答

1

有一些不同的方法来解决这个问题。您可以覆盖旧的表单页面,也可以使用自定义模块创建一个新表单。这样做,你可以在你的模块中做任何你想要的。

另一种可能性是使用视图来做同样的事情。这样做可以让您访问许多强大的功能,因为您可以执行视图模块允许的任何操作。您可以创建不同的内容类型排序方式。

我听说过很多使用视图为创建内容页面创建类似页面的页面。您选择哪种方法取决于您希望如何执行此操作以及与内容类型相关的数据,一种方法比另一种更容易。但不知道具体细节,我不能说哪个。我建议你从观点出发,因为如果你能用它来得到你想要的东西,你很快就能找到答案。

3

您应该可以在自定义模块中完成此操作,而不会破坏核心。

您将需要实施hook_menu_alter()接管node/add的回调函数。

喜欢的东西

function mymodule_menu_alter(&$items) { 
    $items['node/add']['page callback'] = 'mymodule_node_add_page'; 
} 

应该让你开始。然后,您可以创建函数mymodule_node_add_page,并且可以使用原始回调函数作为起点。

您也可以通过覆盖theme_node_add_list()在主题级别执行此操作。

0

有,做你所寻找的一个模块,Content type groups

+0

内容类型组似乎并没有影响到创建内容页面。在http://www.lullabot.com/blog/article/module-monday-content-type-groups查看伊顿的评论 – akalata 2014-07-07 16:37:09

0

我创建了一个沙箱模块前段时间这是应该做的: https://drupal.org/sandbox/YaronTal/1260038

唯一的问题是我是不是能够创建具有可拖动界面的管理后端。

我知道这个问题是旧的,但以防万一别人有同样的问题...

相关问题