继续折腾安知鱼——配置朋友圈页面
继续折腾安知鱼——配置朋友圈页面
雨天狂奔折腾感言
群友谪仙
提供了一些教程,搞清楚了朋友圈页面的基本原理:
- 抓取友链地址里的rss,生成一个json文件
- 配置一个API服务,挂载这个json
- 主题里设置这个API地址,调用json,并通过css渲染到页面
所有的教程基本都是基于两个项目:
项目1,带前端管理面板,默认适配安知鱼:这个配置比较复杂,需要在vercel配置后端,且数据文件比较大,加载较慢,具体看相关仓库教程。所有功能都正常,包括前端管理面板。部署后端后在主题里设置以下字段:
1
2
3
4
5
6
7enable: false
# 这个js文件需要下载下来,将其中的 https://friends.anheyu.com/ 修改为你自己部署的后端,并上传git或网盘生成直链后引用
vue_js: https://npm.elemecdn.com/anzhiyu-theme-static@1.1.2/friends/index.f9a2b8d2.js
apiurl: https://friends.anheyu.com/ # 你部署的后端地址,必须带 /
error_img: https://cdn.bsgun.cn/Hexo-static/img/error-404.avif # 404错误图
top_background: https://pan.811520.xyz/2024-10/1728111447377.webp # 顶部横幅图
top_tips: 看看小伙伴们都写了些什么神仙文章项目2,轻量级朋友圈,推荐使用:这个配置简单,可以直接部署在
cf pages
,本身就不支持前端管理(好像也没这个必要,因为友链数据在git库里会定时更新),朋友圈钓鱼
功能不可用,因为不适配安知鱼,根据群友x Jin
的提示,找到了适配方法。梦爱吃鱼
大佬有此插件的详细魔改教程,我只是在他基础上做了一些总结和自己的理解
本文部署采用项目2
开始部署
一、克隆项目
点击这里打开项目,直接克隆它
二、配置克隆好的项目
1. 创建需要爬取的链接json文件
在本地新建一个friend.json
文件,格式如下:
1 | { |
每一个数组的第一行:网站名称;第二行:网站地址;第三行:网站图标。没错,你的博客友链里都有这些数据,复制过来就可以了。注意格式不要出错,将这个文件上传到你刚刚克隆的仓库,生成一个直链地址,假如是:
1 | https://raw.githubusercontent.com/yourname/yourepo/refs/heads/main/friend.json |
重要提示:这一步不是必须的,如果你不想在朋友圈更新友链的文章,而是想把朋友圈做成一个新闻聚合站、游戏资讯站
,这一步可以省略,但我建议建议先照做,熟练就再去做DIY的事
2. 配置仓库根目录的conf.yaml
文件
这个文件作者已经做了详尽的注释,要改的地方就1个:
1 | spider_settings: |
其他什么邮箱推送功能,建议保持false
状态
还有一个地方可以配置,可以直接抓取任意支持rss
订阅的网站内容,这就是我前面说的可以打造新闻聚合站、游戏资讯站
,前提网站支持rss
,安知鱼主题都支持,就是这里
他通常是一个类似于这样的https://blog.imsyy.top/rss.xml
的xml文件,这里就可以配置一些你自定义的rss订阅
1 | specific_RSS: |
3. 配置action,生成我们需要的 all.json
如果你需要邮件推送的,需要在action的Repository secrets
中配置一个变量,SMTP_PWD = 邮件服务器发信密码,一般与邮箱密码相同。如果邮件推送功能未开启,则不需要此变量
直接手动运行一次action
(作者默认设置是间隔4小时运行一次,我改成了6小时),以后就不用管了,它会自动运行。注意:action一定要配置读+写的权限
运行完成后会自动在我们的仓库生成一个page
分支,切到到这个分支:
目录结构是这样的:
点开all.json
文件看看是否成功生成了类似下图的内容,如果是,证明成功了
三、部署API服务
现在开始切换到 CF
新建一个pages
,链接GIT仓库,选择刚刚克隆的项目,
重要提示:一定要选择 page 分支
点击部署,等待几分钟,打开你的项目,如果出现以下页面,说明你部署成功
点击上图中的测试接口,你会得到一个类似https://*****.pages.dev/all.json
的地址,并会出现类似下图的内容
给这个 pages 绑定一个自定义域名,假设为:friend.anzhiyu.xyz
那么,你的后端地址就是:https://friend.anzhiyu.xyz/
,注意,最后面必须带/
OK,完全成功,现在距离最终成果还差最后一步
设置安知鱼主题
1. 修改主题配置文件
打开安知鱼主题配置文件_config.anzhiyu.yml
,找到朋友圈配置,将enable: true
改为false
, 或者全部用#
注释掉
1 | friends_vue: |
新增以下字段:
1 | # Lite朋友圈配置 |
2. 修改theme\anzhiyu
主题文件夹相关文件
点此下载js文件替换`themes\anzhiyu\source\js\anzhiyu\random_friends_post.js`同名文件
修改themes\anzhiyu\layout\includes\page\flink.pug
文件
搜索
#random-post
修改为下面所示(标注+
的内容是需要新增的):1
2
3
4
5
6
7
8#random-post
script(defer data-pjax src=url_for(theme.asset.random_friends_post_js))
+ script.
+ if (typeof UserConfig === 'undefined') {
+ var UserConfig = {
+ private_api_url: '#{theme.friends_lite.private_api_url}',
+ }
+ }搜索
.banner-button-group
修改为以下内容(标注+
的内容是需要新增的):1
2
3.banner-button-group
- if (theme.friends_vue.apiurl)
+ if (theme.friends_lite.private_api_url)
3. 修改\source\fcircle\index.md
文件
注意:原默认的type
字段要去掉
1 |
|
然后一键三连,启动本地预览
1 | hexo cl && hexo g && hexo s |