插件简介
ExSearch是由熊猫小A写的一个Typecho搜索扩展功能插件,可以实时的搜索网站内容,主要原理就是利用静态文件的缓存将文章数据缓存在前台,然后查询在本地浏览器完成。该插件支持搜索实时响应、高亮与预览功能。

插件使用
- 下载插件,解压文件夹,并将文件夹重命名为 ExSearch。
- 上传至插件目录,在后台启用
- 保存一次插件设置,并点击重建索引。
- 在主题中,在任何可点击的元素上加上
class="search-form-input",点击即可唤起搜索框。
自定义 hook
默认的,点击搜索结果时会直接跳转至对应的页面,但是若你的主题使用了 AJAX 或者 PJAX 技术,你可能需要使用自定义的钩子来处理点击事件(例如发起一次 PJAX 操作)。在页面中插入一个函数如下:
<script>
function ExSearchCall(item){
// your code
}
</script>
其中,item 是一个 JQuery 对象。举例:
function ExSearchCall(item){
if (item && item.length) {
$('.ins-close').click(); // 关闭搜索框
let url = item.attr('data-url'); // 获取目标页面 URL
$.pjax({url: url,
container: '#pjax-container',
fragment: '#pjax-container',
timeout: 8000, }); // 发起一次 PJAX 请求
}
}
可能的问题
如果你的站点内容过多导致建立索引失败,请在 Plugin.php 第 136 行左右的位置,取消下面两行的注释:
$sql = 'SET GLOBAL max_allowed_packet=4294967295;'; $db->query($sql);
注意,这需要高级权限。你也可以手动对数据库执行:
mysql > SET GLOBAL max_allowed_packet=4294967295;
阅读全文
温馨提示:本教程仅为学习参考使用,不构成任何收益承诺,变现效果因人而异,需结合自身努力与实操,合理运用课程所学内容,同时严格遵守平台相关规则与相关法律法规。




