我在Drupal 7中设置了一个搜索页面,当我在输入关键字后点击搜索内容时,它只显示一个空的page.tpl.php
。页。换句话说,它只显示page.tpl.php
模板而没有结果。
这对我来说实在令人惊讶。搜索页面不应显示page.tpl.php
模板,但会显示该模板。我启用了搜索模块,search-result.tpl.php
和search-results.tpl.php
位于我的主题文件夹中;但它仍然显示我page.tpl.php
模板。但是当我删除page.tpl.php
时,它完美无缺。知道为什么会这样吗? -
有没有办法解决它?为什么会这样?我怎样才能创建一个搜索页面模板(如page-search-results.tpl.php),它只是读取它?
非常感谢
<?php
/**
* @file
* Theme implementation to display a single Drupal page.
*
*
* @see template_preprocess()
* @see template_preprocess_page()
*/
?>
<div class="wrapper">
<!--Header-->
<header>
<div id="top">
<?php global $base_url; ?>
<div id="logo">
<?php if ($logo): ?>
<a href="<?php print $front_page; ?>"><img src="<?php print $logo; ?>" alt="<?php print t('Home'); ?>" /></a>
<?php else: ?>
<?php if ($site_name): ?>
<h1 id="logo-text"><a href="<?php print $front_page; ?>" title="<?php print t('Home'); ?>"><?php print $site_name; ?></a></h1>
<?php endif; ?>
<?php endif; ?>
</div>
<div id="searc"> <img src="<?php echo $base_url."/jkl/".$directory ?>/images/MK.jpg" id="mk" width="227" height="51" border="0" alt="Company Company">
<form class="lmksearch">
<input type="search" name="s" value="" class="searchbox">
</form>
</div>
</div>
<!-- Menu -->
<div id="menu">
<?php if ($main_menu): ?>
<div class="nav">
<?php print theme('links__system_main_menu', array(
'links' => $main_menu,
'attributes' => array(
'id' => 'main-menu-links',
'class' => array('links', 'clearfix'),
),
'heading' => array(
'text' => t('Main menu'),
'level' => 'h2',
'class' => array('element-invisible'),
),
)); ?>
</div>
<?php endif; ?>
</div>
<!--menu-->
</header>
<!--Header END-->
<!--content-->
<div class="c"></div>
<div class="content-wrapper">
<div class="teaser-content-cat">
<div class="page-title">Publication: <?php print $node->field_category['und'][0]['taxonomy_term']->name; ?></div>
<!-- White Canvas on Black Starts here -->
<div class="content-canvas">
<div class="article-node left left-side">
<!-- article would come here -->
<h3><?php echo $node->title; ?></h3>
<p class="teaser-content-desc"><?php print $node->field_month['und'][0]['value']; ?> | <?php print $node->field_author_s_['und'][0]['value']; ?> </p>
<p>
<div class="content-from-admin">
<?php if ($search_results) : ?>
<?php include "search-result.tpl.php" ; ?>
<?php endif; ?>
<p class="article-subhead"><?php print $node->field_subtitle['und'][0]['value']; ?></p>
<?php echo $node->body['und'][0]['value']; ?>
</div>
</p>
</div>
<!-- Side bar -->
<div id="viewrow" class="right right-side">
<?php print render($page['sidebar_first']); ?>
<!-- Sidebar -->
</div>
<!-- Clearing Both Left and Right Floating Elements. -->
<div class="c"></div>
<!-- View Row Ends -->
</div>
<!-- White Canvas Ends -->
</div>
<!--Footer-->
<div class="footer">
<?php print render($page['footer']); ?>
</div>
<!-- Teaser Ends -->
</div>
<!--Wrapper end-->
</div>
</body>
</html>
答案 0 :(得分:1)
检查Drupal 7的template suggestions。
如果您需要更改整个页面模板,则必须使用页面 - search.tpl.php 或页面 - 搜索 - node.tpl.php 分别(如果你的路径是/ search / node)。因为 search-results.tpl.php 是页面内搜索结果的默认包装器,而不是页面。
在提交的page.tpl.php代码之后编辑:
你错过了page.tpl.php文件中的<?php print render($page['content']); ?>
!请关注Drupal Theming documentation guide。