【问题标题】:Drupal excessive menu partsDrupal 过多的菜单部分
【发布时间】:2011-03-21 13:43:49
【问题描述】:

在模块开发 (webtv) 中,我提供了一个可以针对其内容(播放列表)进行配置的通用块。在配置表单上有一个添加内容(播放列表)的列表以及链接“添加新播放列表”和“编辑”现有的链接放置在每个条目旁边。由于块配置路径是:“admin/build/block/configure/[my_module_name]/[block_delta]”。

我希望在单独的页面上添加/编辑播放列表表单,并且应该可以通过以下方式访问: admin/build/block/configure/[my_module_name]/[block_delta]/playlist/add 和 admin/build/block/configure/[my_module_name]/[block_delta]/playlist/[playlist_id]/edit

为此,我在 hook_menu 中添加了两个条目,页面回调作为 drupal_get_form,页面参数作为表单定义函数。

清除缓存并运行 cron 后,links 不会服务器播放列表添加/编辑页面,而是重定向到块配置页面。

我做错了什么?是否可以将块配置页面扩展到子页面?

【问题讨论】:

  • 在您的 hook_menu 代码中添加将更容易诊断您遇到的问题。

标签: drupal drupal-6 drupal-modules hook-menu


【解决方案1】:

drupal(6) URL 中允许的最大菜单部分限制为 7 个。在我的问题中,我引用了包含 8 个和 9 个部分的路径,这就是问题所在。

 admin/build/block/configure/[my_module_name]/[block_delta]/playlist/add
 admin/build/block/configure/[my_module_name]/[block_delta]/playlist/[playlist_id]/edit

在 Drupal 7 中,限制扩展为 9。

可以在文件drupal/includes/menu.inc中手动更改为define('MENU_MAX_PARTS', 12);

【讨论】:

  • 黑客核心是 Drupal 的第八大致命罪,所以我强烈建议不要这样做。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多