这个问题太宽泛,无法详细回答,但我将如何处理这个问题:
鉴于WP的本地搜索速度很慢,我们可以排除在访问者打字时使用此方法获取中间结果的可能性。除非我们有一个闪电般快速的专用服务器因此,这意味着我们必须为搜索目的建立自己的索引。为了限制此索引的大小,我们必须选择要用于建议的字段。我会说:标题、摘录、类别和标签,以及指向页面的链接。假设这些字段的组合是一个400字节的信息块现在,每次保存帖子/页面/附件时,我们都必须将这些区块存储在易于访问的地方。最好的方法可能取决于网站的最终规模。对于1000篇文章,您的索引将是400k字节。可以将其存储为数据库选项字段中的块数组。如果站点更大,可能会将此数组保存在文件中现在我们有了一个索引,问题是如何将其应用到站点。有两种可能的方法:将搜索发送到服务器或将整个索引下载到用户端。如果索引是400k,这是图像的大小,那么只需将其与页面一起发送并使用javascript在本地搜索即可。这可能是最快的方法。如果不能每次都发送整个索引,那么必须通过发送ajax请求在服务器端进行搜索。选项表总是缓存的,因此随时可用。缓存索引文件需要一些工作,但这是可行的一句话:是的,这是可以做到的,但如果没有太多的帖子需要索引的话,这只会非常快。