Appearance
文章摘要(可选)
这个教程是教你如何让自己的网页适配文章摘要功能。
你可以首先检查是否支持插件
如果你的网站是目前PostChat所支持插件的网站系统,可以安装PostChat插件,方便快速配置。如果你的网站系统不支持,可以尝试下面的通用教程。
将代码插入到网页
我们需要将PostChat中的代码修改一些参数后插入到网页的任何位置,编辑框你可以直接编辑方便你的修改。
我们可以观察一下代码,里面有tianliGPT_postSelector和tianliGPT_key这两个变量,我们需要更改里面的值来适配不同的主题,并且配置更多内容。
获取tianliGPT_postSelector
这里列出一些常见博客主题的选择器值(部分未经过测试,如果有问题欢迎反馈):
主题名称 | tianliGPT_postSelector | tianliGPT_postURL | 备注 |
---|---|---|---|
hexo-theme-butterfly | #post #article-container | 无需添加 | 无 |
hexo-theme-fluid | #board .post-content | 无需添加 | 无 |
hexo-theme-next | #posts .post-body | 无需添加 | 无 |
hexo-theme-stellar | .md-text.content.post | 无需添加 | 无 |
hexo-theme-volantis | #post #post-body | 无需添加 | 无 |
hugo-theme-DoIt | .page.single:not(.special) .content | 无需添加 | 无 |
halo-theme-xue | #container .article-content #lightGallery | 无需添加 | 无 |
wordpress: argon | #post_content | 无需添加 | 无 |
wordpress: 7B2 | #primary-home .entry-content | 修改里面的域名:b2.7b2.com/*.html | 无 |
wordpress:pix | .single-content | https://*/*.html | 无 |
wordpress: Sakurairo | .post .entry-content | 无需添加 | 无 |
wordpress: 子比主题 | .single-post .wp-posts-content | 无需添加 | 无 |
wordpress: CorePress | .post-content-content | 无需添加 | 无 |
wordpress: OneNav | .post-template-default .panel-body | 无需添加 | 无 |
valaxy-theme-yun | .content .markdown-body | */posts/* | 无 |
typecho-bearsimple | #post-content #bearsimple-images | 无需添加 | 无 |
typecho-bearhoney | .post-content-block .content | 无需添加 | 无 |
typecho-handsome | #postpage #md_handsome_origin | 无需添加 | 无 |
typecho-joe | .joe_post .joe_detail__article | 无需添加 | 无 |
typecho-void | .articleBody | 无需添加 | 无 |
如果你的主题不在上面,我们可以继续看通用教程。
打开你的文章界面,按下F12
键,打开开发者工具。
点击选择器按钮。
然后鼠标选中到博客的文章。通过滑动鼠标尽可能的让方块涵盖文章中的所有内容。例如:
我的鼠标大致在红色的位置。
然后点击一下。我们可以看到这一行变灰了,说明被选中了。
然后我们鼠标放在灰色部分,来检查选中的部分是否包含整个文章,但是不包含文章外的东西。
很显然,鼠标放在post行时,出现了下方的按钮被选中的情况。
我们观察一些页面结构,发现post里面有多个结构,我们选择符合我们的要求的div元素。
我们发现这一行正好符合我们的要求。
包含了整个文章
不包含文章外的内容
我们右键单击,然后复制这一行的选择器:
复制的内容就是我们的 tianliGPT_postSelector。
常见问题
在不应该出现摘要的界面出现了摘要
你可以再添加一个变量来实现只匹配文章url。这个是通过tianliGPT_postURL
来实现。
你可以添加
JavaScript
let tianliGPT_postURL = "";
其中双引号的内容为匹配的文章地址,支持通配符。例如在张洪Heo博客中,文章的地址通常为:
https://blog.zhheo.com/p/8eb7249d.html
https://blog.zhheo.com/p/463d306b.html
所以我们可以填写通用格式:*/p/*.html
高级技巧
以下都是可选变量,如果能正常运行,可以不填写。添加方式就是在填写key的那一段代码的</script>
之前添加即可。
例如:<script>let tianliGPT_wordLimit = 2000; let tianliGPT_postURL = '*/p/*'; let tianliGPT_postSelector = '\#article-container';let tianliGPT_key = '这是你的key';</script>
tianliGPT_postURL
当主题存在其他页面和文章页面结构相同时,可以通过通配符url域名来实现只在指定域名中执行。
例如:let tianliGPT_postURL = '*/p/*';
只会在地址含有/p/
的域名中执行。避免非文章页面添加。
支持正则表达式,要求格式为/
开头和/
结尾。例如:let tianliGPT_postURL = "/^https?://[^/]+/[0-9]{4}/[0-9]{2}/[0-9]{2}/"
tianliGPT_blacklist
当你有一些页面不想要使用文章摘要,那么你可以将所有的黑名单放入一个json文件中。例如blacklist.json
json
{
"blackurls": [
"https://example.com/somepath/*",
"https://*.example.com/",
"https://www.example.org/specificpage.html",
"http://127.0.0.1:5500/dev.html"
]
}
然后添加tianliGPT_blacklist
变量,将json文件的地址放入进去,例如:
let tianliGPT_blacklist = 'https://example.com/blacklist.json'
tianliGPT_wordLimit
⚠️危险:更改此变量损失已消耗过的key,因为你提交的内容发生了变化。
可以设置提交的字数限制,默认为1000字。这意味着每个文章最多消耗你1000字符(因为只有提交扣费,生成文本不扣费)。你可以降低字符数来让扣费变得更少,也可以增加字符数让文章变得更准确。上限为5000,超过5000字符将被截断。
例如:let tianliGPT_wordLimit = 1000;
tianliGPT_typingAnimate
当此变量为false时,那么不执行打字动画。
例如:let tianliGPT_typingAnimate = false;
tianliGPT_Title
当设置此变量后,TianGPT顶部的名称“AI摘要”可以被修改。
例如:let tianliGPT_Title = '宇宙无敌智能摘要';
tianliGPT_injectDom
当设置此变量后,文章摘要将不插入到文章之前,而是此变量对应的节点位置。例如你想要插入到class为ai-content的元素内的开头,可以使用下面的变量。
例如:let tianliGPT_injectDom = '.ai-content';