【发布时间】:2014-12-19 15:31:00
【问题描述】:
大家好,我正在尝试使用 php 为 drupal 7 编写一个块来填写 iframe 代码的一部分,该代码将取决于当前节点 URL 别名。
例如:<iframe height="70px" width="70px" src="<?php $path; ?>"></iframe>
但是我无法使用以下方法来设置 $path 变量:
$path = drupal_get_path_alias($nid)
$path = drupal_lookup_path('source', $path, $path_language);
我在网站上启用了 PHP,但我避免在内容上使用它,时不时地在块上使用它
编辑
我设法使用以下方法让这个工作更好一点:
$path = drupal_get_path_alias('node/'.arg(1));
但是我注意到基本 url 没有被包含在内,这没什么大不了的,因为我知道它是什么并且它不会改变,但是如果有办法在 php 中获取它,我想知道。
【问题讨论】:
-
我认为您尝试在模板过程的哪个部分执行此操作很重要。您可以执行 print_r($node) 以查看在尝试此操作的任何地方是否填充了节点变量。 $node 可以设置,但我认为 $nid 不是系统标准。
-
不在模板中,这将是一个块,我会告诉drupal 在某些页面中显示这个块。 print_r($node) 对我不起作用。谢谢,虽然我觉得 $nid 是模板和模块的意思,而不是内容/块