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

Drupal 9:如何修改保存账户信息时显示的「The changes have been saved.」提示消息

修改Drupal账户保存成功提示消息的可行方法

当然有办法修改这条提示!作为长期折腾Drupal的老玩家,我给你整理了几种最常用的可行方案,从无代码到代码实现都有,你可以根据自己的技术能力挑选:

方法1:通过界面翻译(无代码,最简单)

Drupal核心的提示文本大多支持翻译替换,哪怕你用的是英文站点,也能通过翻译系统直接替换:

  • 登录后台,访问路径 admin/config/regional/translate
  • 在「搜索字符串」输入框里精准查找原消息 The changes have been saved.,找到对应的条目
  • 点击条目后的「编辑」按钮,把翻译内容改成你想要的文本(比如改成 Your account details have been updated successfully! 或者中文的「您的账户信息已成功更新!」)
  • 保存修改后,再去编辑账户信息提交,就能看到新的提示消息了

方法2:用表单钩子修改提交消息(代码实现)

如果你会写自定义模块,用表单钩子可以精准针对用户编辑表单替换提示:

  1. 先创建一个简单的自定义模块(比如命名为 custom_user_notifications)
  2. 在模块的 .module 文件里添加以下代码:
/**
 * Implements hook_form_alter().
 */
function custom_user_notifications_form_alter(&$form, \Drupal\Core\Form\FormStateInterface $form_state, $form_id) {
  // 匹配用户编辑自己账户的表单ID
  if ($form_id === 'user_form') {
    // 添加自定义的提交处理函数
    $form['actions']['submit']['#submit'][] = 'custom_user_notifications_user_form_submit';
  }
}

/**
 * 自定义用户表单提交处理函数,替换成功提示
 */
function custom_user_notifications_user_form_submit($form, \Drupal\Core\Form\FormStateInterface $form_state) {
  // 先清除系统默认的成功消息
  \Drupal::messenger()->deleteByType('status');
  // 添加我们自定义的提示消息
  \Drupal::messenger()->addStatus(t('您的账户信息已成功保存,所有变更已生效!'));
}
  1. 启用这个自定义模块,测试编辑账户提交,就能看到新的提示了

方法3:实体更新钩子(覆盖所有用户实体更新场景)

如果想覆盖所有用户实体更新的提示(包括通过API批量更新等非表单场景),可以用实体更新钩子:

/**
 * Implements hook_entity_update().
 */
function custom_user_notifications_entity_update(Drupal\Core\Entity\EntityInterface $entity) {
  // 只处理用户实体类型
  if ($entity->getEntityTypeId() === 'user') {
    // 清除默认提示,添加自定义消息
    \Drupal::messenger()->deleteByType('status');
    \Drupal::messenger()->addStatus(t('账户信息已完成更新,请确认变更内容!'));
  }
}

这个方法会在任何用户实体被更新时触发,适用范围更广。

注意事项

  • 方法1适合非技术人员,操作零代码,但如果站点是多语言环境,要注意对应语言的翻译条目设置
  • 方法2和3需要自定义模块,操作前建议先备份站点文件和数据库,避免出现意外问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.28 17:57:32