siyuan_feed插件 入门文档
md
## 阮一峰的网络日志 (手动在这个标题上添加书签:feed)
* feed:http://www.ruanyifeng.com/blog/atom.xml
* cron:`1 20 * * *` 需要注意的是,上方链接后面不可有其他文字,会全部当做url
同时按下 shift+alt+p 运行下面这个命令
如果没有看见的话请尝试按
F5 刷新一下当前页面,还不行的话联系我吧:
子虚的联系方式 进阶文档
1.
对任意一个容器块添加 feed 书签
2.
1.
列表X以 feed: 开头的子块声明了 feed 的链接地址,这是必填的
2.
列表X以 timeout: 开头的子块声明了请求该 feed 的超时时间,单位为 ms 默认为 10000 (十秒)
3.
列表X以
customParse: 开头的子块声明一个自定义的解析器,可以参照
太郎-龙逸楠的博客 处的实现
请问如果一个单纯的 html 网页,不提供 json 或 xml 格式的数据,应该怎么写 customParse 呢?能否提供一个例子?谢谢!
4.
列表X以 cron: 开头的子块声明什么时候对该链接进行更新检查
5.
例如下方的列表块就是一个以 feed: 开头的容器块并且声明了链接地址和更新时间(每天晚上八点1分检查一次),
简单来说 feed 和 cron 应该是同一个列表中的不同的列表项
feed:http://www.ruanyifeng.com/blog/atom.xml
cron:1 20 * * * 需要注意的是,上方链接后面不可有其他文字,会全部当做url
此属性是可选的,插件会采取默认值
1 * * * * 每小时的第一分钟进行一次检查,
表达式语法如下
bash
* * * * *
| | | | |
| | | | +----- 星期几 (1 - 7) (星期天为 7)
| | | +------- 月份 (1 - 12)
| | +--------- 日期 (1 - 31)
| +----------- 小时 (0 - 23)
+------------- 分钟 (0 - 59)
注意!!这个 cron 表达式仅支持数字和*表达,不支持更高级的特性
4.
1.
所有订阅文章的 md 都是以 * [ ] ##... 或 * [X] ##... 开头的(所以不要随意改动插件生成的文档,否则可能重复生成)
2.
熟悉sql的一下子就能够知道我们只要查询具有 feed 书签的块的子块并且该子块以 * [ ] ##... 开头即是未读文档
3.
1.
sql
SELECT *
FROM (
SELECT b.*
FROM blocks AS b
JOIN attributes AS a ON b.parent_id = a.block_id
WHERE a.name = "bookmark" AND a.value = "feed"
) AS subquery
WHERE subquery.markdown LIKE '* [ ] #%'
ORDER BY created DESC
4.
将该sql复制到嵌入块的查询语句中即可得到如下效果,主要获取了 标题、链接、发布时间、更新时间、摘要,然后如果阅读后有什么感想也可以记在该标题块的最后面
5.
在阅读完文章之后勾选标题前面的任务框,等待思源笔记更新嵌入块即完成了一整套使用思源笔记订阅 rss 源的过程
通过数据库来定义属性 如下图所示,在多数据库的情况下数据库名为 feed 的具有高优先级,然后排在前面的优先级高于后面的
如果没有在文档中定义以 feed: 开头的容器块的话,所有文章都会插入到具有feed书签的块之后,可以定义一个 feed: (这里不写链接,在数据库中定义)容器块来控制文章插入的位置。
支持命令
示例 其他
更新日志 v1.1.11 不兼容更新
不兼容 customParse 的第一个参数的值发生了变化,如果使用到了该参数则需要修改
升级方案: 假设第一个参数名为 attr ,请修改为 feedDoc , 然后在函数内添加 const attr = feedDoc.attr 即可兼容原有代码
v.0.0.9 解决控制台报错 name 重定义。更新 logo。
v0.0.8 v0.0.7 v0.0.6 2023-12-16
https://www.zhangxinxu.com/wordpress/feed
插件添加命令 _feedFetch 立刻对所有feed进行一次拉取