Questions tagged «routes»

使用Drupal 8中引入的术语,路由是模块响应的路径。

4
Drupal 7中的高级菜单主题
我浏览了网络,如何对自定义菜单进行主题设置一点也不明显。我已经寻找了几个小时,却没有发现任何一篇文章可以说明创建菜单和自定义其输出从头到尾的过程。看来这是一个多阶段的过程: 通过Drupal界面创建菜单。 在template.php文件中创建一个主题函数以对输出进行主题化。 通过将此菜单添加为变量,使其暴露于模板文件(以某种方式)。 theme在模板文件中的菜单上调用该函数。 1很容易做到,我遇到的问题是2、3和4。查看默认页面模板,我发现它在变量中公开了主菜单$main_menu。在页面的后面,您可以看到函数theme('links__system_main_menu', array('links' => $main_menu...,这意味着它正在某处寻找一个适当命名的主题函数,并使用它来生成输出。 我知道是否将function theme_links__system_main_menu(&$variables) {...}我的template.php文件放置在Drupal中,而不是使用该功能function theme_menu_links(&$variables) {...}。 我不知道Drupal是如何链接使用该功能创建的自定义菜单的。例如,假设我创建了一个名为的菜单My Menu。我可以在template.php文件中创建以下功能,并以该菜单的输出为主题吗?function theme_links__system_my_menu(&$variables) {...} 另外,如何使该自定义菜单可用于模板文件?Drupal如何将$main_menu变量公开给page.tpl.php? 我认为我在这里缺少的关键是如何将代表我的自定义菜单的变量嵌入模板页面。尽管在大多数情况下,创建菜单后我完全不知道该做什么。 谢谢您的帮助。 编辑:可能应该发布我在做什么。根据我对下面的BetaRide的评论,我需要将自定义HTML注入<li>菜单项的元素中。具体来说,我要添加Twitter Bootstrap图标。
15 7  routes  theming 

3
如何更改另一个模块定义的路由?
换句话说,hook_menu_alter()的Drupl 8等效项是什么? Drupal 8仍然使用hook_menu(),但是对于我所看到的,该钩子返回的信息与Drupal 7中返回的钩子不同。例如,user_menu()中为user 提供的定义如下。 $items['user'] = array( 'title' => 'User account', 'title callback' => 'user_menu_title', 'weight' => -10, 'route_name' => 'user_page', 'menu_name' => 'account', ); route_name属性链接到user.routing.yml文件中的条目。 user_page: pattern: '/user' defaults: _content: '\Drupal\user\Controller\UserController::userPage' requirements: _access: 'TRUE' 这与使用Symphony进行的操作不同,它使我困惑于模块如何更改另一个用户定义的路由。 仍在调用的唯一函数hook_menu_alter()是menu_router_build(),但该函数仍包含需要更新的代码,因为它仍在使用现在不推荐使用的drupal_alter()。 // Alter the menu as defined in modules, keys are like …
14 routes  8 

1
使用hook_menu()为定制模块创建标签
因为两个小时以来,我试图在我的自定义模块后端中创建标签。 我已经尝试了一些建议,但其中任何一条都无法奏效。 这是我当前的hook_menu(): function social_links_menu() { $items['admin/config/system/social_links'] = array( 'title' => 'social_links', 'description' => 'Configure to fit clients needs', 'page callback' => 'drupal_get_form', 'page arguments' => array('social_links_settings'), 'access arguments' => array('administer site configuration'), 'file' => 'social_links.admin.inc', ); return $items; } 我只需要两个标签:'tab1'和'tab2'。 有人可以给我一个有效的例子吗?这应该很简单,但是现在看来似乎不可能
14 7  routes 

5
如何在路径自动中使用斜杠分隔分类层次结构
Pathauto似乎具有不同的别名分类层次结构。 从分类菜单: 分类>汽车>阿斯顿·马丁> DB9 Coupe 分类>职位>会计 我想要的是这样的网址: 分类/职位/会计(非会计职位分类) (请注意,Pathautho也会以相反的顺序生成破折号。) 在Pathauto中,我正在使用以下模式:(Default path pattern适用于以下带有空白模式的所有词汇) [term:parents-all] 困惑。

2
如果两个模块都在“ hook_menu”中定义了相同的菜单路径,那么Drupal将选择哪个?
例如,“ moduleone”定义路径“ admin / hello”,该路径输出print_moduleone_stuff()。 /** * Implements hook_menu() */ function moduleone_menu() { $items['admin/hello'] = array( 'title' => 'Module One Hello World', 'page callback' => print_moduleone_stuff, ); return $items; } “ moduletwo”定义路径“ admin / hello”,其输出 print_moduletwo_stuff()。 /** * Implements hook_menu() */ function moduletwo_menu() { $items['admin/hello'] = array( 'title' => 'Module …
14 7  routes  hooks 

6
如何在菜单中使用URL别名?
我通过旋转测试站点来踢Drupal 7的轮胎。 我选择了Danland主题,并为每个页面创建了带有URL别名的各种页面,但是当我为每个页面创建菜单链接时,我只能在菜单链接的“路径”字段中输入节点,而不能输入别名。因此,我只能在菜单中输入“ node / 20”,而不能输入“ about-us”(节点的别名)。 我希望菜单项解析为别名而不是节点。 我怎么做?
14 7  routes  path-aliases 

3
将匿名用户重定向到登录页面
我想如果用户未登录并访问我网站上除REST VIEWS路由器以外的任何页面,我将他/她重定向到drupal 8中的登录页面,我找到了drupal 7的此解决方案,但没有找到Drupal 8的任何解决方案 将匿名用户重定向到登录页面 如何使用“规则”模块将匿名用户重定向到登录页面?

7
如何在Drupal 7中调用menu_rebuild函数?
我想调用menu_rebuild()函数,但是我不确定确切将代码片段粘贴到何处。 我在本地实例的任何地方都找不到update.php文件。 我想尝试此操作的原因是我删除了所有节点,但它们仍出现在菜单结构下。
13 routes  updating 

6
403错误后如何将匿名用户重定向到登录表单?
如果匿名用户遇到403错误,我想将其重定向到登录表单。 我已经创建了事件订阅者,这是我的代码,但是最后在当前页面上循环了。 /** * Redirect anonymous user to login page if he encounters 404 or 403 * response. * * @param \Symfony\Component\HttpKernel\Event\GetResponseEvent $response * The created response object that will be returned. * @param string $event * The string representation of the event. * @param \Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher $event_dispatcher * Event dispatcher …
13 8  routes  redirection 

5
如何将分类菜单作为标准菜单项的子菜单注入?
我有一个主菜单,其顶级结构类似于以下内容: Home - Categories - Something Else - ... - Contact 这些顶级链接中的每一个都转到相应的节点页面。 我有一个类别(多级)词汇表,我需要在“类别”项下的子菜单中获得这些分类法术语。我想避免将项目硬编码到主菜单中,因为子菜单应该像词汇表一样增长/缩小。 过去,我编写了过多的代码来完成此工作,该代码与分类法操作挂钩并基于此操作管理特定菜单的子项(与“ 分类法菜单”的工作非常相似,但每个分类不必具有不同的菜单)词汇)。 尽管该方法有效,但它不是理想的方法,当然也不是通用的。我不能只是将代码从旧项目中提升到新项目中,这将需要进行合理的定制。 我忍不住觉得必须有一个基于模块的“标准”解决方案。 我已经看到了一些建议,可以结合使用许多不同的模块(甚至有些建议很奇怪地建议使用基于视图的模块)。我愿意接受任何建议,但是如果涉及安装1个或2个以上的模块,以及大量的硬编码,特定于上下文的配置,那么在这种情况下它可能不会有太大帮助。

1
是否可以通过hook_menu将自定义链接添加到“主菜单”?
我正在尝试从模块内部向主菜单添加新链接。 目前,此代码: function custom_food_orders_menu() { $items['order_food'] = array( 'title' => 'Order Food', 'page callback' => 'page_creator_function', 'access callback' => TRUE, 'menu_name=' => 'main-menu', 'type' => MENU_NORMAL_ITEM, ); return $items; } ...将“订购食物”链接添加到“导航”菜单。我尝试将菜单名称设置为主菜单,但这似乎不起作用。 这是Drupal的限制吗?如果是这样,我将通过手动创建指向该页面的链接来进行调整。
12 7  routes 

2
尝试创建带有标签的视图时出现问题。选项卡的链接未指向我设置的路径
我正在尝试创建带有选项卡的视图:这样的页面具有多个选项卡,该视图具有一个显示所有Article节点的主页,一个用于所有Event节点的选项卡以及一个用于Blog节点的选项卡。应该是这样的: 菜单中的“内容”按钮链接到/ content, “文章”标签链接到/ content / articles, “博客”标签链接到/ content / blog, “事件”标签链接到/ content / event。 但是,通过我的工作,这是我得到的: 所有3个标签都链接到/ content,而不是/ content / articles,/ content / blog,/ content / event。 ========== 下面是我的视图配置: 因此,基本上,选项卡会显示出来,但是选项卡的链接都指向/ content,而不是它们的单独链接。 我做错了什么?请指教。提前致谢!
12 views  routes 

4
如何在用户个人资料页面中添加自定义标签?
我需要在用户个人资料页面中添加自定义标签。我定义了如下路线: mymodule.routing.yml mymodule.account: path: '/user/{user}/custom' defaults: _form: '\Drupal\mymodule\Form\MyModuleUserSettingsForm' _title: 'Custom Settings' user: \d+ requirements: _permission: 'access content' mymodule.links.task.yml mymodule.account: title: Mymodule Settings route_name: mymodule.account base_route: entity.user.canonical mymodule.links.menu.yml mymodule.account: title: My module Settings parent: entity.user.canonical route_name: mymodule.account 然后在清除高速缓存选项卡后出现在配置文件页面中。但是,当我打开URL / user / 1 / custom时,看到未找到页面消息。
11 users  8  routes 

5
我应该在hook_menu的描述中使用t()吗?
我一直将t()用于hook_menus标题和描述,如下所示: $items['some-path'] = array( 'title' => t('My Page Title'), 'description' => t('This is a description about what my page is for'), 'page callback' => 'profile_user_page', ); 这对我来说很有意义,因此用户可以根据需要将标题和说明翻译成不同的语言。 然而此评论上DO模块的评论则说: 不,那是错误的,不要那样做-hook_menu()中的描述永远不要使用t()。 这是什么原因,这实际上是最佳做法吗? 同样,如果这是真的,那么我们也应该不使用t()作为标题吗?
11 7  i18n-l10n  routes 

4
增加内存限制对致命错误无济于事:416行上的…/ modules / views / views.module允许的内存大小
三周前我已经从Drupal 7.14切换到7.15,因此,我遇到了一系列非常复杂的内存限制错误(对我而言)。每当我尝试清除性能缓存或运行更新脚本时,都会发生这些错误。 我的托管公司已将php.ini中的内存限制增加到126 M,256 M,512 M甚至1024M。但是仍然会发生错误。我已经将网站从共享迁移到了VPS,但是仍然会出现错误。我没有办法,也不知道如何前进。 错误如下: 致命错误:416行/home/example/public_html/sites/all/modules/views/views.module中的536870912字节已用尽的内存大小(尝试分配30字节) 致命错误:在第2736行的/home/example/public_html/includes/menu.inc中,耗尽了536870912字节的允许内存大小(尝试分配108字节) 致命错误:第59行的/home/example/public_html/sites/all/modules/chain_menu_access/chain_menu_access.module中的536870912字节已用尽的内存大小(试图分配71字节) 在第93行的/home/example/public_html/sites/all/modules/views/includes/base.inc中分配64个字节)
11 views  routes 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.