money

adsterra

Typecho 实时搜索功能插件 ExSearch

插件简介

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

Typecho 实时搜索功能插件 ExSearch

插件使用

  • 下载插件,解压文件夹,并将文件夹重命名为 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;
阅读全文
教程下载
下载价格VIP专享
仅限VIP下载升级VIP
本课程仅供VIP会员下载,严禁外传。客服QQ: 40260169

温馨提示:本教程仅为学习参考使用,不构成任何收益承诺,变现效果因人而异,需结合自身努力与实操,合理运用课程所学内容,同时严格遵守平台相关规则与相关法律法规。

国外问卷调查

吉祥物
显示验证码
没有账号?注册  忘记密码?

社交账号快速登录

如(注册/登录)以后显示未登录,F5刷新页面即可恢复。