修改Drupal 7中的搜索页面模板

时间:2013-08-09 18:26:52

标签: search drupal-7

我在Drupal 7中设置了一个搜索页面,当我在输入关键字后点击搜索内容时,它只显示一个空的page.tpl.php。页。换句话说,它只显示page.tpl.php模板而没有结果。

这对我来说实在令人惊讶。搜索页面不应显示page.tpl.php模板,但会显示该模板。我启用了搜索模块,search-result.tpl.phpsearch-results.tpl.php位于我的主题文件夹中;但它仍然显示我page.tpl.php模板。但是当我删除page.tpl.php时,它完美无缺。知道为什么会这样吗? -

有没有办法解决它?为什么会这样?我怎样才能创建一个搜索页面模板(如page-search-results.tpl.php),它只是读取它?

非常感谢

page.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>

1 个答案:

答案 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