Drupal案例学习 - 科技新时代(4) 搜索、Tab、性能

logo-drupal-showcase-study好来,继续有关popsci.com(科技新时代杂志)的Drupal案例学习;昨天我们了解了图片及相片集的field结构,今天把搜索、Ajax Tab以及性能表现放在一起看一下。

说到搜索,今天铺天盖地有关G的言论完全不出意料;去掉4+1毛及更大的幕后推动力因素,很多出于自己意志的人云亦云非奴即愚的表演让我没有任何话可以讲。

搜索

在popsci.com中,搜索结果是按照文章内容类型的不同来分组显示的还可以按照发表时间先后、相关度大小、人气高低等因素改变排序。用户还可以通过RSS订阅搜索结果的更新。

我们是通过篡改Drupal原生搜索功能来实现这些需求的,例如将搜索结果按照不同排序方式输出到不同的模块中,并带有翻页功能,然后通过下面要说到的Ajax Tab进行切换。

每一次的搜索行为都会被缓存,将一个特定的哈希id赋予执行操作的用户,保存相应的搜索信息,提高该用户在将来的搜索行为的效率。

Ajax Tabs

popsci.com中的很多地方都用到了Ajax Tabs,用来在同一个区块中显示那些形式相同但来源或排序不同的内容。Drupal 6之前,这些JS相关的功能组件可以通过Javascript Tools模块来实现;在Drupal 6及更高版本中,JT已经按照功能拆分为一些不同的模块。

drupal-case-study-popsci-tab

性能表现

硬件方面不必多说,确实有很强健的方案在支持着popsci.com的正常运作;值得一提的是Memcache模块,通过它,Drupal框架可以与Memcached以及PECL Memcache library完美整合。


收藏与分享