gpt4 book ai didi

php - hook_form_alter 不工作

转载 作者:可可西里 更新时间:2023-11-01 13:39:38 26 4
gpt4 key购买 nike

我使用的是 drupal 6.16。以下 hook_form_alter 代码不起作用。我只是想在用户登录表单的提交按钮上将“登录”更改为“登录”

<?php
//$Id$

function helloworld_form_alter($form_id,&$form) {
switch ($form_id) {

case 'user_login_form':

// Change 'Log in' to 'Sign in'.
$form['submit']['#value'] = t('Sign in');


break;
}
}

有什么办法可以解决这个问题吗?

请帮忙。谢谢。

最佳答案

您的代码中有两个错误:

  1. 您的函数签名是错误的,正如 hfidgen (+1) 已经指出的那样。它必须是 yourModuleName_form_alter(&$form, &$form_state, $form_id),因此在您的示例中永远不会触发表单 ID 上的开关。
  2. 您检查错误的表单 ID。在这种情况下,您需要检查两个表单 ID,两者都与您正在使用的不同:
    1. user_login_block 用于作为 block 提供的小型登录表单(在大多数页面上常用)
    2. user_login 用于显式登录页面(通常在“用户/登录”下找到)

这两种形式在结构上基本相同,因此您通常可以在相同的 hook_form_alter 实现中更改两者 - 只需添加另一个 case 语句来检查第二个版本。

关于php - hook_form_alter 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2804278/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com