Drupal $ primary_nav变量中有哪些变量

时间:2018-11-07 21:00:54

标签: drupal drupal-7

如何为$ primary_nav变量中的每个菜单项提取所有标签和链接的数组?

1 个答案:

答案 0 :(得分:0)

您可以只使用php的print_r()。或使用devel之类的专用模块:它提供了一些帮助程序,可以漂亮地打印变量,包括数组和对象。它还提供了一个明确的缓存按钮,可以生成随机节点等。

我认为devel的dprint_r()dpm()是Drupal开发人员在打印和调试变量时最常用的功能,也是我认为最有用的功能。

在您的情况下,$primary_nav是经过 处理 的变量:它首先是由注册主题中的函数准备的,然后可以在中进行更改主题和/或模块提供的> 处理 预处理 挂钩

知道了这一点,您可以从正在处理的模板中直接打印出来,例如 page.tpl.php

<?php if (!empty($primary_nav)): ?>
  <!--<?php print render($primary_nav); ?>-->
  <?php dpm($primary_nav); ?>
<?php endif; ?>

..或在 process preprocess 函数中“更早”调试它:

function some_preprocess_page(&$variables) {
  dpm($variables['primary_nav']);
}

此外,如果您不知道正在发生的事情或模板中可用的变量,将php的get_defined_vars()与漂亮的打印功能结合使用可能会非常有用:dpm(get_defined_vars());