ImpressPages/用户管理

来自站长百科
跳转至: 导航、​ 搜索

ImpressPages | 入门使用 | 定制开发

ImpressPages CMS 1.0.5开始,用户管理模块就被整合到ImpressPages核心中了。用户可以在管理面板的Community->User标签中进行用户管理。该模块允许用户进行注册和登录。

准备工作[ ]

首先我们需要创建一个新的区域,登录到管理员控制面板,来到Developer->Zones(开发人员->区域)标签页面,然后点击页面上的New Record(新建记录),填写下面信息:

Name--名称,也就是你新建的区域的名称,根据个人喜好或者需要来填写;
Key--关键字,一个将会在PHP代码中使用到的字符串,用来区别该区域(不能包含特殊字符),比如使用user;
Template--选择模板文件(默认的是main.php);
Associated module group--相关的模块组,填写Comunity
Associated module--相关模块,填写User

相关代码[ ]

  • 登录框生成:
<?php 
global $site; 
echo $site->getZone('user')->generateLogin(); //可以将'user' 替换成你自己定义区域时填写的名称
?> 
  • 获取登录页面的链接:
<?php 
global $site; 
echo $site->getZone('user')->getLinkLogin(); //可以将'user' 替换成你自己定义区域时填写的名称
?> 
  • 获取注册页面的链接:
<?php 
global $site; 
echo $site->getZone('user')->getLinkRegistration(); //将'user' 替换成你自己定义区域时填写的名称
?> 
  • 获取登出链接:
<?php 
global $site; 
echo $site->getZone('user')->getLinkLogout(); //将'user' 替换成你自己定义区域时填写的名称
?> 
  • 获取个人资料链接(只有用户登录时才会显示):
<?php 
global $site; 
echo $site->getZone('user')->getLinkProfile(); //将'user' 替换成你自己定义区域时填写的名称
?> 
  • 检查用户是否登录:
<?php 
global $session; 
$session->loggedIn(); //如果用户登录的话,返回真值. 
?> 
  • 获取登录用户的ID:
<?php 
global $session; 
$session->userId(); //返回用户ID 
?> 
  • 通过用户ID来获取用户数据:
<?php 
  require_once(BASE_DIR.MODULE_DIR.'community/user/db.php'); 
  global $session; 
  if($session->loggedIn()){   
          $id = $session->userId();   
          $userData = \Modules\community\user\Db::userById($id);   
          var_dump($userData); 
  } 
?> 
  • 手动登录或者登出用户:
<?php 
global $session; $session->login($userId); //通过ID来登录
$userId $session->logout(); //登出当前用户 
?> 

相关定制[ ]

你可以通过通过覆写template.php文件来更改默认的模板文件;

你也可以通过覆写config.php文件来为个人资料或者注册页面添加一些额外的字段。


定制示例[ ]

  • 添加用户审核功能;
  • 关于新注册用户的注册通知;
  • 针对未注册用户隐藏相关内容;

定制示例插件

参考来源[ ]

ImpressPages使用手册导航

入门使用:

文件结构 | 安装 | 升级 | 站点迁移 | 主题 | URL结构 | 配置文件 | 区域和页面 | Cron设置 | 常用任务

定制开发:

本地化 | 区域定制 | 用户管理 | 插件开发 | Ajax使用 | jQuery替代标准函数库