Drupal 7 Drupal 7:通过emdedding视图显示

Drupal 7 Drupal 7:通过emdedding视图显示,drupal-7,Drupal 7,我有一个内容类型categories和一个名为categories的视图。在内容中,我有一个标题,一个图像,然后是一些描述。我想通过emdedding视图在我的页面front.tpl.php上显示它们 有5个这样的内容具有标题、图像和描述 以下是我编写的代码,但它不起作用: <?php $view = views_get_view('categories'); $view->set_display('page_1'); $view->pre_execute(); $view-&

我有一个内容类型categories和一个名为categories的视图。在内容中,我有一个标题,一个图像,然后是一些描述。我想通过emdedding视图在我的页面front.tpl.php上显示它们

有5个这样的内容具有标题、图像和描述

以下是我编写的代码,但它不起作用:

<?php
$view = views_get_view('categories');
$view->set_display('page_1');
$view->pre_execute();
$view->execute();
if (!empty($view->result)) {
foreach ($view->result as $row => $values) {
$text = '';
$text =  $view->render_field('title', $row) ;
$field_categories_image .= '&lt;div&gt;' . $view-    >render_field('field_categories_image', $row) . '&lt;/div&gt;';
$image_url = file_create_url($field_categories_image[0]  ['http://localhost/drupal-7.34/sites/default/files/firefighter.jpg']);
$text = '<img src="'.$image_url.'"/>';
}
print $text;
}
$view->destroy();
?>

我不会对模板进行黑客攻击,而是通过配置在admin/structure/views/view/categories中的视图上设置块显示来实现这一点。然后转到admin/structure/block,在frontpage上显示所需的块。

谢谢ken klatt。这听起来很简单,但有没有最佳实践来查看页面或块类型?我把它当作一个页面,一个视图不限于一种显示类型。您可以创建一个视图,然后为其创建多个显示类型,然后在站点上将其用于不同的目的。也许您可以创建一个博客帖子摘要视图。您可以在菜单链接中显示指向的页面,然后在frontpage的侧栏中显示配置为显示的视图的块显示。为视图创建块显示并将其添加到容器后,我使用block_class模块为该块提供一个css类,以便更轻松地应用样式。