用途:为 Drupal 站点整理 Search API 的索引配置与加权(boost)策略,让搜索结果能按“精选内容”“收藏/书签数”等信号排序。
主要能力:说明布尔字段应设为 type: boolean(非 integer)以配合自定义 boost 处理器;整数计数字段由 flag_search_api 模块索引。提供自定义布尔 boost 处理器示例(FeaturedContentBoost,于 preprocess_index 阶段将原 boost 乘以系数,如 2.0x),以及 number_field_boost 处理器配置(公式为 boost += 字段值 × boost_factor,如 138 书签 × 0.01 = +1.38)。给出推荐系数区间:精选 1.5x–3.0x、书签数 0.01–0.05、收藏数 0.1–0.5、浏览数 0.001–0.01。
必要用法:用 drush config:set 修改字段类型与 boost_factor;当命令产生副作用或需删除数组键时,改用 drush php:eval 直接编辑活动配置;修改后执行 drush cr、search-api:clear、search-api:index 重建索引,并用 config:get、search-api:search 验证。建议仅做索引期加权,避免多处理器作用于同一字段造成冲突。
限制:改字段类型或 boost 后必须重建索引,索引期加权为静态、无法按查询调整;导出配置可能把 Solr 自定义字段类型(如 solr_text_custom:ngramstring)降级为 text,需导出后恢复并检查 git diff;修改服务器配置可能导致索引 server 变为 null。具体适用范围与效果需结合实际站点验证。