如何在Drupal中设置和获取最后访问过的页面?

时间:2016-09-19 03:39:42

标签: javascript drupal

我想模仿elpais.com对我的Drupal网站的行为。它的工作原理如下:

如果您访问elpais.com并转到任何部分,例如brasil.elpais.com,然后关闭标签/窗口,然后重新访问elpais.com,系统会自动重定向到brasil.elpais.com。如您所知,系统会保存用户上次关闭的位置。

我想为Drupal网站制作这个;特别适用于任何页面。

到目前为止,我所做的很简单:

  1. cookies.js文件添加到misc文件夹。 (此JavaScript文件的代码来自How do I set/unset cookie with jQuery?。)
  2. page.tpl.php文件中,我使用此drupal_add_js('misc/cookies.js', 'file');调用该文件来嵌入用于Cookie管理的JavaScript代码。
  3. 我有一个基本想法:将当前网址保存到使用JavaScript的Cookie中,然后在用户访问任何其他网页时将其恢复。

    我需要做什么?想法,建议等?

1 个答案:

答案 0 :(得分:1)

首先,我不明白为什么你想用JavaScript做到这一点。每次用户打开某个页面时,使用PHP并将当前路径存储到cookie或PHP会话。然后,制定一些逻辑,当打开页面时,检查该cookie /会话值并重定向到存储路径。

Drupal具有scala.List功能,可以进行重定向:

https://www.drupal.org/node/2023537

但请注意不要每次都进行重定向,因为除了您访问过的第一个页面之外,您将无法访问任何其他页面。为重定向添加一些额外条件,即只有在您不是来自站点的其他页面时才进行重定向(请查看goto php变量)。