【发布时间】:2012-02-27 23:28:14
【问题描述】:
我将 ubercart 配置为允许匿名结帐。 问题在于来自服务器的邮件被反垃圾邮件软件阻止。 如果密码是自动生成的,客户将永远不会收到它并且无法跟踪订单状态,所以我想要求输入密码,而不仅仅是允许它。 我该怎么做?
【问题讨论】:
我将 ubercart 配置为允许匿名结帐。 问题在于来自服务器的邮件被反垃圾邮件软件阻止。 如果密码是自动生成的,客户将永远不会收到它并且无法跟踪订单状态,所以我想要求输入密码,而不仅仅是允许它。 我该怎么做?
【问题讨论】:
解决方案比较简单。 在新模块中,定义如下函数:
function MYMODULE_form_alter(&$form, $form_state, $form_id) {
if($form_id=="uc_cart_checkout_form"){
$form['panes']['customer']["new_account"]['pass']["#required"]=true;
$form['panes']['customer']["new_account"]['pass_confirm']["#required"]=true;
}
}
最终在一个 try-catch 块中,以防止您在将来更改配置时收到通知。
【讨论】: