Drupal block_load 页面

Posted

技术标签:

【中文标题】Drupal block_load 页面【英文标题】:Drupal block_load page 【发布时间】:2013-09-02 18:08:07 【问题描述】:

我如何无法在我的模板中加载“页面”视图。我的页面视图是“foo_bar”,视图文件是“views-view-unformatted--foo-bar--page.tpl.php”,然后我使用下一个代码,但它没有加载视图。

$block  = block_load('views', 'foo_bar');
$output = drupal_render(_block_get_renderable_array(_block_render_blocks(array($block))));
echo $output;

【问题讨论】:

【参考方案1】:

加载视图有 2 个函数;

$view = views_get_view('view_name');
  // ensure view exists
  if (!$view)
    return;
  $view->set_display('view_display');
  $view->set_arguments(array($tid));
  //$view->is_cacheable = FALSE; //default
  $view->pre_execute();
  $view->execute();
  $result = $view->render();

或更简单的:

$result = views_embed_view($name, $display_id = 'default'); 

【讨论】:

以上是关于Drupal block_load 页面的主要内容,如果未能解决你的问题,请参考以下文章

如何在视图过滤器中使用标记 - Drupal 7

插入块

Drupal 远程代码执行漏洞(CVE-2018-7602)

aliyun 主机Nginx 上配置Drupal 伪静态

通过模板或自定义加载程序函数加载包含上下文菜单的完整块

Drupal:Drupal6 意见:过滤器限制