当前位置

在Drupal的内部搜索结果页面中去掉发布者、发布时间等信息

James Qi 在 2011年5月11日 - 09:14 提交
内容摘要: 前一阵子修改了MediaWiki中的一个PHP程序,去掉了全文检索结果中的文件大小、更新时间等信息,另外在Drupal中也是可以实现的,现在补充在Drupal中实现内部搜索结果页面中去掉发布者、......

  前一阵子修改了MediaWiki中的一个PHP程序,去掉了全文检索结果中的文件大小、更新时间等信息,另外在Drupal中也是可以实现的,现在补充在Drupal中实现内部搜索结果页面中去掉发布者、发布时间等信息的办法。

  办法很简单,就是在Drupal目录中找到这个文件:

drupal_root/modules/search/search-result.tpl.php

  将其中第57行(Drupal 6.20)注释掉就可以:

  <?php if ($info) : ?>
<!--jamesqi 2011-5-10
  <p class="search-info"><?php print $info; ?></p>
-->
  <?php endif; ?>

  也就是去掉显示$info的那一行。这样可以避免大量导入数据的网站中搜索结果都是显示相同的发布者和相同的时间信息。

自由标签:

评论

-- 发自IP地址: 59.173.8.114 (位置 | 谁是)

修改drupal的核心代码毕竟不是很规范,在升级的时候就比较麻烦,现在找到另外一个办法,就是通过修改css来隐藏search-info这个class中的字符:

下面是在一个Drupal 7.12网站中设置了一个在search/*页面显示的block中的代码:

<?php
$head_search= '
<style type="text/css">
.search-info {
  display:none;
}
</style>
';
$element_search = array(
  '#type' => 'markup',
  '#markup' => $head_search,
);
drupal_add_html_head($element_search, 'head_search');
?>
 

James Qi / 祁劲松

-- 发自IP地址: 59.173.8.114 (位置 | 谁是)

方域说得很对,应该写到外部css文件中,很简洁的。
我们以前对css的修改不多,所以也没有另外用一个外部css文件,现在看来很有必要,不仅仅是这个搜索结果的显示问题,还有很多其他需要控制显示的地方,都应该用外部css文件来实现。
谢谢留言!

James Qi / 祁劲松

-- 发自IP地址: 59.173.8.114 (位置 | 谁是)

直接在core module中修改代码显然不是一种drupal的规范办法,在系统升级、迁移等过程中就会丢失。
这里再加一种drupal style的修改方法:在sites/all/themes/garland中添加一个search-result.tpl.php文件,复制core module的这个文件中随便自己怎么改,都不影响core module,以后升级、迁移也方便。

James Qi / 祁劲松

添加新评论

Plain text

  • 不允许使用HTML标签。
  • 自动将网址与电子邮件地址转变为链接。
  • 自动断行和分段。
验证码
本问题用于测试您是否为人类访问者,避免自动垃圾发贴。
图形验证
键入显示在图片中的字符