Skip to content

wanxi50/typecho_plugin_HideContent

Repository files navigation

HideContent - Typecho 隐藏内容插件

特定内容隐藏,支持评论可见和密码可见两种方式 效果图

功能特性

核心功能

  • 评论可见:访客评论后才能查看隐藏内容
  • 密码可见:访客输入正确密码后才能查看
  • AJAX 解密:评论/输入密码后平滑显示,无需刷新页面

兼容性

插件基于Typecho 1.2.1 开发,未在其他版本上进行充分测试

  • 使用标准 HTML5 <details> 标签
  • 完全兼容 Markdown 语法
  • 即使不安装插件,内容也能正常显示(显示为折叠块),方便迁移

安装方法

  1. 下载压缩包
  2. 上传到 usr/plugins/ 目录
  3. 解压后,重命名为HideContent
  4. 在 Typecho 后台启用插件

使用方法

方法 1:使用编辑器按钮

  1. 在文章编辑页面,点击工具栏的 🔒 按钮
  2. 选择加密方式:评论可见密码可见
  3. 填写内容并发布

编辑器

方法 2:手动编写代码

评论可见

<details hide-content="comment">
这里填写需要隐藏的内容
</details>

密码可见

<details hide-content="password" data-key="your_password">
这里填写需要隐藏的内容
</details>

文件结构

HideContent/
├── Plugin.php           # 主插件入口
├── Config.php           # 配置面板
├── Action.php           # AJAX 处理器
├── assets/              # 前端资源
│   ├── editor.js        # 编辑器增强
│   ├── decrypt.js       # 前端交互/请求
│   ├── hide-content.css # 默认样式
├── LICENSE              # 开源许可证(GPL-3.0)
└── README.md            # 使用说明

构建与发布

本项目使用 Node.js 构建前端资源

  1. 安装依赖
npm ci
  1. 构建并打包
npm run release

配置选项

在 Typecho 后台 → 插件 → HideContent → 设置

  • 评论后可见提示文字(支持HTML):未评论时的提示文案
  • 密码可见提示文字(支持HTML):未输入密码时的提示文案
  • 评论错误提示(支持HTML):未满足“评论可见”条件时的错误提示
  • 密码错误提示(支持HTML):密码验证失败时的错误提示
  • 自定义样式:隐藏内容区域的 CSS(留空使用内置默认样式)
  • 管理员/作者直接查看隐藏内容:开启后管理员与作者直通可见
  • 启用隐藏功能:默认启用;关闭后不再隐藏,内容直接展示
  • 密码尝试频率限制(秒):同一 IP 在 X 秒内仅允许一次密码提交,范围 0–600(0 表示不限制)

常见问题

1. 为什么选择 <details> 标签?

  • 标准 HTML5 标签,兼容主流 Markdown 引擎
  • 即使未安装插件也能正常显示(折叠块),便于文章迁移
  • 虽然输入起来有点麻烦,但是提供了一键插入的功能

2. 安全方案

  • 后端预加密/后端解密:前端仅显示密文与密码框,绝不输出明文
  • 安全措施:访问控制(IP限速、同源校验)、加密与完整性检验

许可证

本项目使用 GPL-3.0 开源许可证发布。你可以在遵守 GPL-3.0 条款的前提下复制、修改和分发本项目及其衍生作品。

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published