显示一个没有页面模板的 Drupal 视图

2021-12-29 00:00:00 php drupal drupal-views

我想显示一个 Drupal 视图,而没有通常围绕它的页面模板 - 我只想要视图节点的纯 HTML 内容.

I would like to display a Drupal view without the page template that normally surrounds it - I want just the plain HTML content of the view's nodes.

此视图将包含在另一个非 Drupal 站点中.

This view would be included in another, non-Drupal site.

我希望必须对多个视图执行此操作,因此最好的解决方案是让我快速轻松地设置这些视图 - 我不想每次都创建 .tpl.php 文件我需要在某处包含一个视图.

I expect to have to do this with a number of views, so a solution that lets me set these up rapidly and easily would be the best - I'd prefer not to have to create a .tpl.php file every time I need to include a view somewhere.

推荐答案

我一直在寻找一种通过 ajax 拉取节点数据的方法,并为 Drupal 6 提出了以下解决方案.实施以下更改后,如果添加 ajax在 URL 中 =1(例如 mysite.com/node/1?ajax=1),您将只获得内容,而没有页面布局.

I was looking for a way to pull node data via ajax and came up with the following solution for Drupal 6. After implementing the changes below, if you add ajax=1 in the URL (e.g. mysite.com/node/1?ajax=1), you'll get just the content and no page layout.

在您的主题的 template.php 文件中:

in the template.php file for your theme:

function phptemplate_preprocess_page(&$vars) {

  if ( isset($_GET['ajax']) && $_GET['ajax'] == 1 ) {
        $vars['template_file'] = 'page-ajax';
  }

}

然后使用以下内容在您的主题目录中创建 page-ajax.tpl.php:

then create page-ajax.tpl.php in your theme directory with this content:

<?php print $content; ?>

相关文章