如何在Drupal中创建一个管理页面?这可能吗?


How to make an administration page in Drupal? Is it even possible?

假设我正在Drupal 7中创建一个博客,我希望我的最终用户看到一个链接:"Add Post",当他点击该链接时,他可以添加一个新内容。但是,代替默认的管理页面,是否可以创建一个新的,其中只有帖子标题,标签,消息等?

我已经搜索了2天了,没有发现从哪里开始/如何开始一个特定的管理页面,而不是默认的

您必须创建一个特定的模块,它将:

  • 定义你想要的博客文章编辑表单
  • 通过hook_menu函数定义一个页面,该函数包含表单
  • 在管理菜单
  • 中为它定义一个菜单项
  • 等。

你应该通过阅读一些关于drupal 7的书籍来进一步扩展drupal。至少开始阅读http://drupal.org/node/1074360

另一个很好的起点是drupal的"示例"模块,它为你的模块需要做的大多数事情提供了示例代码:http://drupal.org/project/examples

您可以通过在主题中添加博客发布页面的模板来完成所有需要的操作。这使您可以自定义表单的显示,而无需深入Drupal编程。

或者,您可以创建一个模块,用您自己的设计替换默认的博客提交表单。

Drupal网站上的主题和模块设计指南详细介绍了这两种方法。

詹姆斯

你可以有一个不同的主题管理部分,你可以有多个权限取决于角色,你可以自定义任何页面使用***node.tpl

每个add/content_type都是一个表单。可以使用hook_form_alter或hook_form_id_alter修改表单。
如果您想为不同的角色显示不同的字段,首先看看是否可以在admin/people/permissions页面上完成,如果不能,则在form_alter中编写额外的If条件。

。检查用户角色:

global $user;

// Check to see if $user doesn't have the administrator role. if (!in_array('administrator', array_values($user->roles))) { // Alter the form }

当Devel模块被启用时,你可以使用dpm($form)来检查表单变量