将Smarty Site与Drupal站点集成

时间:2014-10-29 10:10:15

标签: drupal drupal-7 smarty

我目前正在开发一个基于smarty的网站。该网站的名称为http://example.com

我在根路径中构建了一个新文件夹,并在该文件夹上安装了droupon(这是drupal的一个组件,用于购买或创建任何交易)。网站网址为http://example.com/coupon

现在我想整合或合并这两个网站。因此,当注册用户访问example.com时,他可以使用其会话用户ID访问example.com/coupon

但这就是问题所在。

这是否真的可以将基于smarty的网站(example.com)的数据传递到drupal网站example.com/coupon

请帮帮我。

1 个答案:

答案 0 :(得分:0)

我会在Drupal的模块中编写,查看$ _SESSION并在Drupal站点创建和/或登录用户。也许规则模块可以完成这项工作,但您可能需要实现一个rules-hook来获取相关会话数据作为规则组件的输入。

以下几行代码可以完成一些工作,但您需要实现hook_menu以及注册集成的入口点。

 //register user
 $passwd = user_password();
 $edit = array(
    'name' => $_SESSION['username'],
    'pass' => $passwd,
    'mail' => $_SESSION['email'],
    'init' => $_SESSION['email'],
    'status' => 1,
    'access' => REQUEST_TIME,
 );
 $uu = drupal_anonymous_user();
 $u = user_save($uu, $edit);

 //Login
 global $user;
 $user = user_load($u->uid);
 $login_array = array ('name' => $username);
 user_login_finalize($login_array);

然而,我不确定这是最好的方法。在2个不同的应用程序之间共享同一会话命名空间中的数据可能会导致双方出错。从一开始就在Drupal中实现整个站点不是更好吗?

相关问题