
7折
减价出售
¥799
Relevanssi 采用词频-逆文档频率(TF-IDF)与BM25混合算法,比原生搜索更智能:
// 查看索引结构(存储在wp_relevanssi表)
global $wpdb;
$index = $wpdb->get_results("SELECT * FROM {$wpdb->prefix}relevanssi");
/*
doc | term | tf | title | content | comment | tag | link | author | category | excerpt
----------|----------|-------|----------|---------|---------|-----|------|--------|----------|--------
post_id | 关键词 | 词频 | 标题权重 | 内容权重| 评论权重| 标签| 链接 | 作者 | 分类 | 摘要
*/
// 在主题functions.php中添加自定义索引规则
add_filter('relevanssi_indexing_restriction', function($restrict) {
// 排除特定分类
$restrict .= " AND ID NOT IN (
SELECT object_id FROM {$wpdb->term_relationships}
WHERE term_taxonomy_id IN (1,2,3)
)";
return $restrict;
});
// 包含产品SKU字段
add_filter('relevanssi_custom_field_value', function($value, $field) {
return '_sku' === $field ? $value . ' ' : $value;
}, 10, 2);
推荐权重配置:
// 实现销量+相关性混合排序
add_filter('relevanssi_match', function($match) {
$post_id = $match->doc;
$sales = get_post_meta($post_id, 'total_sales', true);
$match->weight *= log(1 + $sales); // 对数缩放避免垄断
return $match;
});
// 中文分词集成(需安装SCWS扩展)
add_filter('relevanssi_terms_to_index', function($terms) {
if (function_exists('scws_open')) {
$so = scws_open();
scws_send_text($so, $terms);
$words = scws_get_words($so);
return implode(' ', array_column($words, 'word'));
}
return $terms;
});
优化措施 | 执行命令 | 预期效果 |
---|---|---|
定期重建索引 | wp relevanssi rebuild | 提升10-30%准确率 |
分批次索引 | wp relevanssi index 1000 | 内存占用降低70% |
排除停用词 | 在设置中勾选”排除短词” | 索引大小减少25% |
// 实现搜索缓存层
add_filter('relevanssi_search_ok', function($ok, $query) {
$cache_key = 'search_' . md5($query);
if ($results = wp_cache_get($cache_key)) {
return $results; // 命中缓存直接返回
}
return $ok;
}, 10, 2);
// 使用Redis存储热门搜索
add_action('relevanssi_search', function($query) {
$redis = new Redis();
$redis->zIncrBy('search_terms', 1, $query);
});
通过深度优化Relevanssi,可使百万级内容的WordPress站点实现:
建议每月执行一次索引维护,并持续监控搜索转化率指标。对于超大型站点,考虑采用Elasticsearch作为Relevanssi的后端搜索引擎。
减价出售
减价出售
减价出售
减价出售
电话咨询
1855-626-3292
微信咨询