Drupal:是否可以将php变量从一个节点插入另一个节点?

时间:2009-06-13 23:33:06

标签: drupal

我正在尝试使用node_load将php变量(作为变量!)从一个节点传递到另一个节点,并且没有运气。

换句话说,在node / 1中,我列出了一些我想在node / 2中进行php解析的变量。

有可能吗?

编辑:

Page 1(www.something.com/node/1)正文中有这样的文字:  


$var1 = "Some text";

Page 2(www.something.com/node/2)正文中有这个文字:

    
    $node = node_load(1); 
    print $node->body; 
    print $var1; 
  

我想使用节点内容(作为包含文件),就像我使用PHP的include函数

一样

5 个答案:

答案 0 :(得分:1)

听起来你问的是在第一个节点的内容上使用eval()。

我真的不得不问 - 为什么你想做这样的事情。这种设计真的尖叫出“他不知道他在做什么,而且完全没有理由”。您希望在Node1中存储的数据是什么?为什么在另一个节点需要它?有没有理由不能将它存储为该节点的属性?

答案 1 :(得分:0)

如果你真的要做这样的事情,那么我要做的就是创建一个具有无限值的CCK文本字段字段,可能称为field_value,然后进入显示以将其隐藏起来。然后你可以做类似的事情:

$other_node = node_load(1);
print $other_node->field_value[0]['value'];

虽然你真的应该考虑不同的处理方法,比如通过主题。你想用这个技巧做什么?

答案 2 :(得分:0)

由于我正在处理的网站是一个非社区,一次性的登陆页面情况,而且我非常紧迫地找到一个快速而肮脏的解决方案,我选择使用Dan U的建议。

第1页:

variable_set('var1','Some text');

第2页:

$getvar = variable_get('var1',NULL);
 print "var1 is " . $getvar;

简单地说,我在drupal中创建了在PHP独立中应该正确完成的任务,但我没有选择...

60个几乎相同的登录页面,其中包含特定于URL的信息,2个不同的图形日历,包含事件注册,说明弹出窗口以及其他铃声和口哨声。我想在VIEWS中做一个争论,但弹出窗口杀了我。我需要在每个页面中加载很多元素作为通用变量,这样当不可避免的变化出现时,编辑将是可管理的。

对不起,如果不清楚,那很复杂,很难解释,我时间紧迫......再次感谢!

答案 3 :(得分:0)

您还可以使用PHP会话变量来实现此效果。

第1页:

$_SESSION['variableName'] = 'somevalue';

和第2页:

<?php print $_SESSION['variableName'] ?>
当你尝试设置自己的cookie等时,Drupal会做一些奇怪的事情,但是会话变量似乎可以找到。记得自己清理一下! (在打印出来之后将变量设置为''或类似的东西)

杰森

答案 4 :(得分:-1)

我不确定使用node_load是否可行,但您可以使用variable_set和variable_get,如下所示:

第1页:

variable_set('var1','Some text');

第2页:

$getvar = variable_get('var1',NULL);
print "var1 is " . $getvar;