Questions tagged «users»

用户实体是Drupal使用的最重要的实体之一。


3
如何查看用户是否修改了密码?
更改密码后,我想向用户发送基本通知电子邮件,以通知他密码更改。 我正在Rules为此使用模块。但是我没有找到任何选项,如果用户更改了密码,则无法添加条件。 有什么方法可以检查用户是否使用规则或实用方式更改了密码。 -非常感谢您的宝贵时间。
9 7  users  rules 

1
在代码中设置用户密码?
我希望能够在代码中更改用户密码。 由于user_load返回一个对象并需要user_save一个数组,因此这是不平凡的。 我认为有人已经找到了一种快速简便的方法。 我当前的解决方案如下所示: db_update('users') ->fields(array('pass' => user_hash_password('some_password'))) ->condition('uid', 1) ->execute(); 但是我不喜欢这样绕过大多数钩子。
9 users 


2
如何隐藏和/或阻止访问表单中的字段,例如有机组的group_audience
这一直困扰着我一段时间。.当我尝试从表单中隐藏诸如组受众字段或发布设置之类的字段时,在验证时,将这两个字段都设置为空值,即使默认值是已正确声明。 我尝试使用Invisible,#access,unset hidden无效!这很麻烦,因为对于我当前的项目,用户当时只能编辑其个人资料的一小部分,例如仅编辑地址或图片,因此,如果我隐藏组观众,则用户最终会被逐出他所属的组编辑。 我最终使用下面的代码隐藏了这些字段,同时仍将用户保留在他们的组中。 $variables['user_edit_about']['group_audience']= $temp['group_audience']; $variables['user_edit_about']['group_audience']['#prefix'] = '<div style="display:none;">'; $variables['user_edit_about']['group_audience']['#suffix'] = '</div>'; 有人会想到一种更好的方法来实现这一目标吗? 谢谢

2
重设用户密码,而无需使用“忘记密码?”
我知道在Drupal 7中,我可以通过代码重置用户#1的密码。 define('DRUPAL_ROOT', getcwd()); require_once DRUPAL_ROOT . '/includes/bootstrap.inc'; drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL); require_once DRUPAL_ROOT . '/includes/password.inc'; $newhash = user_hash_password('newpass'); $updatepass = db_update('users') ->fields(array('pass' => $newhash)) ->condition('uid', '1', '=') ->execute(); (user_hash_password()在Drupal 8中不再存在。) 另外,我可以使用以下代码。 define('DRUPAL_ROOT', getcwd()); require_once DRUPAL_ROOT . '/includes/bootstrap.inc'; drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL); require_once DRUPAL_ROOT . '/includes/password.inc'; $edit['pass'] = 'newpass'; $account= user_load(1); user_save($account, $edit); Drupal 8的等效代码是什么?我应该为此使用什么API?
9 users  8 

2
禁用特定块的缓存
我想让页面继续受益于面向匿名用户的Drupal 8缓存机制,除了特定的块,该块应该在知道刷新页面是从Views生成的情况下,在每个页面刷新时更新。 在技​​术上可行吗?怎么样?
9 views  blocks  8  caching  users 

2
register.json不会登录用户或返回用户的会话/令牌/密码
我尝试了太多的变化以在此处列出,但基本要点是我无法通过服务注册后立即使用户登录。我尝试了全新的Drupal 7.33安装,仅启用了Services 7.x.3.11,并且drupalgap 7.x.1.9提供了默认资源设置。 当我使用Drupal界面注册时,创建了用户,打开了会话,并登录了我的个人资料页面。 与 当我调用Services端点时/services/user/register.json,Drupal创建了帐户,但会话不会持久。请参阅下面的屏幕截图。 我该如何A.让该会话保留下来以进行后续的Service资源调用,或者B.挂钩以将用户的密码或自动生成的密码重新添加回json响应中,这样我就可以以编程方式重新提交客户端的/login.json表单(仍然存在)? 这个问题是全局的$ user在Drupal接口和Services模块之间有什么区别?使用LoginToboggan描述了我同样的问题。 在我的屏幕快照中,您将看到一个名为“ login debug”的调试行。它来自“ /sites/all/modules/logintoboggan/logintoboggan.module”的第333行,在这里我尝试了所有这些都无济于事... function logintoboggan_process_login($account, &$edit, $redirect = array()){ global $user; $user = user_load($account->uid); //watchdog('login debug', json_encode($account)); watchdog('login debug', json_encode($edit)); //user_login_submit(array(), array('uid' => $account->uid)); user_login_finalize($edit); // $user = user_load($account->uid); // $user->token = drupal_get_token('services'); // WE HAVE A TOKEN ALTHOUGH …


2
显示限制匿名用户访问的菜单项
我有一个网站,该网站使用“ 私人”模块来设置对内容的访问权限,当然我的某些页面具有菜单项。现在,如果我将页面设置为私人页面,则只有拥有适当权限的用户才能看到该页面,这很棒,而且是我想要的。 但是我对菜单项有一些问题,如果分配给它们的内容不是公开的(例如,分配给它们的页面是私有的),它们就会消失,这是可以的,但是我仍然希望能够显示那些菜单项在导航中,因此如果用户单击它们,它将带他们到登录页面,要求他们输入详细信息以查看该特定页面。 因此,基本上,我想更改菜单项的行为,使其始终对网站的匿名和注册成员可见,但是当您单击它们时,您将能够看到页面(如果已登录)或重定向到登录页面(如果是匿名用户) 我发现这种解决方案对我来说不是最佳解决方案,因为我有很多这样的页面,因此我正在寻找一种更好的方法。我什至尝试了菜单项可见性模块,但也无济于事! 请问我该如何实现? 路卡
9 7  routes  users 

1
允许用户使用相同的电子邮件(Drupal 7)
我正在开发一种系统,该系统将至少部分地供学生使用,其中一些人可能是小学生。我们用Drupal网站取代的旧系统将允许大量创建具有相同电子邮件地址的用户帐户。他们这样做是为了让老师可以将她的电子邮件仅用于所有学生,如果他们需要密码重置,信息只会发送给老师。同样,许多非常年轻的学生没有自己的电子邮件帐户。 我需要将这些帐户导入我的Drupal网站,但是我会遇到麻烦,因为Drupal 7不允许使用相同的电子邮件发送不同的帐户。在Google进行快速搜索之后,我发现并没有太大希望,但我发现Drupal 5有一个肮脏的骇客,但似乎与Drupal 7无关。
9 7  users  emails 

2
节点上的“更改”
mysql> select nid, uid, created, changed from node; +-----+-----+------------+------------+ | nid | uid | created | changed | +-----+-----+------------+------------+ | 1 | 8 | 1336040166 | 1336046390 | +-----+-----+------------+------------+ 我想在node表上有一个“更改为”列,就像我们有一个“创建者”(uid字段)一样。这将跟踪谁对该节点进行了最后更改。我知道这可以从node_revision表派生,但这取决于为我感兴趣的内容类型启用的修订。 那么,什么是最好的方法呢?为什么Drupal核心默认不提供此功能?我认为“更改”是CMS应该附加到内容的非常标准的信息。
9 7  users  nodes 

5
访问其他用户配置文件字段
我使用以下命令在用户配置文件中添加了十几个新字段(在Drupal 7中): 配置->人员->帐户设置->管理字段(admin / config / people /帐户/字段) 如何访问这些值?它们似乎不属于$ user 尝试过,但没有成功: global $user; var_dump($user);
9 7  users 


4
迁移后我无法登录
我搜索了数百种解决方案,并实施了所有解决方案。我也搜索了该网站以查找相同的问题,但找不到它。 我有一个开发站点和一个生产站点。要在两者之间迁移,我使用github push和pulls。过去这不是问题,但是我已经多次遇到此问题。文件迁移后,Drupal不再允许我登录。我尝试使用我的登录凭据,并立即收到“拒绝访问”页面。 我的网站Cookie读写没有问题。我找到了cookie ID,并在数据库中找到了它的条目。因此,cookie似乎运行良好,数据库条目也运行良好。 我看到的问题是数据库会话记录没有保存任何用户ID。当我手动将数据库记录中的用户ID更改为1(对于我的IP),然后刷新网站时,我已经登录。有什么想法吗? /programming/2846935/cannot-login-to-drupal-in-chrome-or-firefox-but-safari-works建议我在settings.php文件中更新$ cookie_domain。我已经尝试了每种配置,但并没有帮助。 http://www.go2linux.org/cannot-login-into-drupal-table-corrupted也建议我修复会话表。我已经做到了,清除了数据库中的会话并清除了我的cookie。那没起效。 http://www.madebymorgan.com/blog/2010/07/15/cant-login-after-drupal-617-upgrade建议我更新settings.php文件中的值:$ cookie_domain和$ base_url。我尝试了所有组合,但均未成功。 我读过它说为适当的权限和所有权的水平运行以下命令INSTALL.TXT: ,chmod o+w sites/default/settings.php,chmod o+w sites/default,chmod o+w sites/default/files,。chmod a-w sites/default/settings.php chmod a-w sites/default没用 http://drupal.org/node/56357#comment-236726中的补丁程序将一些代码添加到您的会话文件中。我已经做到了,但是没有用。 在http://drupal.org/node/56357#comment-391535上,markus_petrux提出了一个很好的建议,即使用新名称定义PHPSESSID并手动设置cookie域和路径。没用 http://old.nabble.com/Re%3A-Can%27t-login-p22258960.html建议register_shutdown_function('session_write_close');在settings.php末尾进行添加,但这对我也不起作用。 http://drupal.org/node/6696#comment-204863告诉我们将一些ini设置添加到settings.php中,清除缓存,清除cookie,清除隐私,重新启动Firefox,并将以下行添加到settings.php中: ini_set('session.cookie_domain', 'exampleorg'); ini_set('session.cookie_domain','www.example.org'); ini_set('session.auto_start', 0);
9 users  migration  6 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.