【发布时间】:2013-02-17 22:00:49
【问题描述】:
对于 Drupal 7 和 Views 3,我正在尝试使用 hook_preprocess_node 中的上下文过滤器参数调用 views_embed_view 的结果,以便嵌入到节点模板中。
视图正在使用字段显示设置,包括“内容:标题”和一些自定义字段。当我使用 Views UI 中的上下文过滤器参数预览视图时,一切都按预期工作,但是当我嵌入视图时,没有加载来自 Fields API 的节点字段(仅加载标题和节点 ID 等内置属性)。
知道这里发生了什么吗?
sites/all/themes/XXX/template.php
function XXX_preprocess_node(&$vars, $hook) {
$node = $vars['node'];
$vars['views__deals__single'] = views_embed_view('deals_single', 'page_1', $node->nid);
}
sites/all/themes/XXX/templates/node--deal.php
// ...
echo 'THE VIEW SHOULD BE HERE:';
echo $views__deals__single;
// ...
回显的结果是节点标题,以及其他视图字段的 HTML 包装器,包括标签,但它们的内容是空的,这与视图预览不同。
救命!
【问题讨论】:
标签: drupal drupal-7 drupal-views drupal-fields drupal-templates