You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Drupal的Preprocess中获取类似用户登录表单的用户密码表单

Drupal预处理器中获取用户密码重置表单的方法

你已经掌握了登录表单的获取逻辑,密码重置表单只需要替换对应表单类即可,完整实现代码如下:

// 在你使用的hook_preprocess_* 函数中写入以下代码
$form = \Drupal::formBuilder()->getForm(\Drupal\user\Form\UserPasswordForm::class);
// 优先使用已注入的renderer服务,无注入时可通过服务容器获取
$renderer = \Drupal::service('renderer');
$variables['password_reset_form'] = $renderer->renderPlain($form);

注意事项

  • 需写全表单的全限定类名,避免命名空间未引入导致的报错
  • 若需要自定义表单结构,可在渲染前修改$form数组的对应配置,比如调整字段权重、修改按钮文本、移除冗余项后再执行渲染
  • 该逻辑通用,要获取其他Drupal核心/自定义表单,替换getForm()参数内的表单类即可

内容的提问来源于stack exchange,提问作者prashant

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 15:39:03