我需要帮助,我想有一个这样的url: "mysite.com/catalog/login",应该显示不同的登录模板不像常见的D7登录页面:mysite.com/login…
我一直在花时间创建不渲染php函数的块:drupal_render()和使用一些预处理函数在template.php
您可以将drupal_render(drupal_get_form('user_login_block'));
与标准/user
页面(如/catalog/login
)分开使用。
你也可以修改表单(例如,改变一些字段,添加属性,如额外的类的样式,等)使用表单更改钩子,如MYMODULE_form_user_login_alter(&$form, &$form_state, $form_id) { }
。
这取决于您是否只是打算在不同的位置呈现登录表单,或者您是否想要对其进行重大更改。也可以从您自己创建的表单以编程方式登录用户。下面是一个stackoverflow响应,详细说明了如何做到这一点:https://drupal.stackexchange.com/questions/5825/how-do-i-programmatically-log-in-a-user
唯一的方法是编写一个自定义模块。您必须覆盖/user的菜单路径,并将其设置为拒绝访问。
更多信息在这里:https://groups.drupal.org/node/20925