朋友圈

@obaby的博客,还有@Sagrre的博客看到了,他们做的朋友圈,开始以为是什么插件或者开发的功能,后来发现是把rss订阅集成到博客的一个页面,这个页面通过定时器刷新,然后就能看到博友们的文章。

我之前在别的博友的博客见过,但是一直没搞懂,也不知道这个东西的原来,首先是看到女王大人obaby,自己魔改了一个别的代码,集成到了自己博客,我羡慕了两天,发现这个玩意我搞不了,我不会写代码。

然后在Sagrre大哥的博客看到了这篇文章,FreshRss自建Rss零基础食用指南(入门版)  顺着文章的教程,尝试了一下,然后发现这个版本非常简单了,对于我这种不会代码的人有操作的可能。

我分享下整个创建过程,详细版本的大家可以看Sagrre的内容,文章非常考究,每个细节每张图都给贴出来,闭着眼睛抄就完了。我列一下下我的创建过程,算是拾人牙慧的简化版。


创建网站

我是宝塔的面板,大家的只要是linux,操作起来应该大同小异。首先在宝塔面部创建新的网站,给网站绑定一个主博客的二级域名,同时在网站的ssl处,申请免费是https,然后强制使用https。

上传网站源码,我使用的PHP版本,还有docker版本的,我对于docker相对陌生,所以这里就只使用PHP版本的源码。源码下载地址:https://freshrss.org/。上传后解压文件到根目录。

填写网站信息

这一步我进来后,程序检测我缺少一个PHP扩展,我复制这个扩展到宝塔的软件商店下载,提示有这个东西,然后直接安装即可,整个PHP环境正常后,开始创建网站。

选择语言,简体中文。选择数据库,这里有个问题,我使用mysql一直创建失败,然后直接用sqlite了,创建成功。接着创建基本的账户信息,账户和密码。

设置网站

我们这里就基本得到了一个网站啦,大家可以根据喜好选择主题,设置这个界面。我开始进行最重要的一步,就是添加订阅RSS源头,直接输入网址,系统会自己检测。我大约添加了三十多个博友,有四五个无法添加,可能是关闭RSS,我一一去邮件和评论问了一下。

自此我们在这个网站的订阅就完成了,打开刷新一下,主页汇聚了我们日常互动的这些博友,平时我经常忘记回访,也不知道哪些博友更新,有了这个东西,上班闲余就打开列表,然后开始拜读众位博友的文章,到评论区互动了。

博客引用

这个环节最麻烦,因为我不会写代码,然后怎么引用到博客我愣是没搞懂,就到Sagrre那里求助,他给了我另一外博友的地址,就是这个,https://www.rz.sb/archives/228/  这位微博把调用的代码和部署调用需要创建的东西都写好了,我只需要复制代码,更改一下就ok了。

整体流程是,写一个页面调用页面的文件,然后设置rss的API,调用api给的数据,输入到output.json里面,然后在宝塔创建定时器,通过定时器访问这个文件,定期引用api到output.json。具体环节我就不写了,上面两位博主的文章就非常详细,直接复制代码按照流程走就行。


前端页面

整个环节中我遇到的最大困难就是,若志奕鑫博友的主题调用代码,我贴在我的页面里面不生效,我的方法是直接创建新页面,然后在文章的html添加。结果就是啥也没有,哈哈哈,好像不行。

这个东西困惑了我三天,然后我想到了chatgpt,我和他说我要在页面添加一段代码,如何才能和我的主题不冲突,然后又展示这段代码,chatgpt直接给了我一个插件名字,叫做Code Snippets ,通过这个插件就可以创建代码片段。

我使用这个玩意,然后直接添加了,rz兄弟的原始代码,结果网站挂了,很尬这里,然后我又跑到数据库,搜索Snippets删除了我添加的数据,网站恢复了。

看来是不能直接贴代码,然后我和chatgpt说,给我优化一下这段代码,然后将代码以html的形式输出,chatgpt给我创建了一段新的代码,我贴完,果然生效了。

但是这个界面非常丑,像极了我做后端同事,直接给我做的前端页面,我说你仿照推特的页面给我重新输出,结果新代码又宕机,我又跑数据库删除添加的代码。

我让他仿照微博的界面给我输出一段,然后他给我输出了一段新的代码,就是现在我使用的这个界面。我把站点标题改成了作者,这类的调用名称改了一下,然后把超链接的位置调整了一下。

比较遗憾的是这个图标调用一直失败,我看图标输出的段落是/f.php?1483e59d这样的,但是我的网站实际输出的是多了一个目录P的,这样的p/f.php?1483e59d,这个我没搞懂,有懂的博友可以给帮忙解决一下,J君在线乞讨方法。

ChatGPT给的代码如下,大家可以直接拿去使用;

<?php
// 获取JSON数据
$jsonData = file_get_contents(‘./output.json’);
// 将JSON数据解析为PHP数组
$articles = json_decode($jsonData, true);
// 对文章按时间排序(最新的排在前面)
usort($articles, function ($a, $b) {
return strtotime($b[‘time’]) – strtotime($a[‘time’]);
});
// 设置每页显示的文章数量
$itemsPerPage = 30;
?>

<style>
.article {
border: 1px solid #ddd;
border-radius: 8px;
margin: 15px;
padding: 15px;
background-color: #fff;
}

.article h2 {
color: #1da1f2;
margin-bottom: 5px;
}

.article p {
margin: 0;
color: #333;
}

.article time {
color: #999;
font-size: 0.8em;
}

.icon {
width: 20px;
height: 20px;
margin-right: 5px;
}
</style>

<body>

<?php
// 生成文章列表
foreach (array_slice($articles, 0, $itemsPerPage) as $article) {
?>
<div class=”article”>
<h3>
<a href=”<?php echo htmlspecialchars($article[‘link’]); ?>” target=”_blank”><?php echo htmlspecialchars($article[‘title’]); ?></a>
</h3>
<p>作者:<?php echo htmlspecialchars($article[‘site_name’]); ?></p>
<p><?php echo htmlspecialchars($article[‘description’]); ?></p>
<time><?php echo htmlspecialchars($article[‘time’]); ?></time>
</div>
<?php
}
?>

</body>
</html>

手工操作

我的整个朋友圈创建,全程没有搓代码的环节,因为我本身也不会,主打的就是一个复制粘贴,插件和GPT给我打下手,最后成功创建了朋友圈。感谢在整个环节中贡献的各位博友,然后感谢ChatGPT,让我实现了代码项目部署上线。

访问地址:https://www.jeffer.xyz/friendly-rss

目录:

《 “跟风FreshRSS创建博客朋友圈” 》 有 30 条评论

回复 赵广笔记 取消回复

您的邮箱地址不会被公开。 必填项已用 * 标注


  1. 赵广笔记 的头像

    这个不错哦,收藏了,改天有空试试,便于回访邻居

    1. Jeffer.Z 的头像

      搭建很简单,直接复制,推荐使用。博友们现在都在拿这个作为访问跳板。

  2. 博导 的头像

    是不是要打开刷新rss网站才能实时更新

    1. Jeffer.Z 的头像

      设置完有显示多久更新一次,但是确实要上网站主动点击更新一下,才会更新,可能我没设置完全吧。

    2. w4j1e 的头像

      在好久之前我也心动过友链朋友圈,当时是想在友链页面搞一个切换按钮,避免弄成两个页面。这样的话要涉及到改主题,想着工程量也不小,就放弃了。不过chatGPT在以后或许真能帮我实现这个。

      1. Jeffer.Z 的头像

        好多博友把友链和朋友圈集成在一起了,友链对我的意义不大,反倒是订阅我比较看重,友链是死的链接,订阅能看到很多有意思文章。

  3. 林羽凡 的头像

    RSS是每个博主必要折腾的东西之一。

    1. Jeffer.Z 的头像

      这个真的很方便,适合我这种喜欢互动的人,四处看博友的文章。

  4. 老麦 的头像

    看来大家都是这样子折腾起来了,有时间的话我也折腾一个。

    1. Jeffer.Z 的头像

      你这个技术水平,完全没问题,我月月商店换主题,你月月自己修改主题,这都是技术。

  5. 老张博客 的头像

    还有保姆级教程呀,我也要搞一个。

    1. Jeffer.Z 的头像

      这股风我也是跟了个尾巴,好简单,直接上手,里面的坑大家趟了一遍,对着码就行。

  6. 威言威语 的头像

    哈哈,折腾起来就非常不错了。

    1. Jeffer.Z 的头像

      全靠这些博友贡献,还有各种教程,以及chatGPT打辅助,属于打了一把团队战。嘿嘿嘿。

  7. 皇家元林 的头像

    搞得不丑。freshrss的路径一直多个P。

    1. Jeffer.Z 的头像

      已经解决,按照博友说的,直接在rss.php这个调用界面里添加个路径就行。

  8. 夕格树洞 的头像

    头像那个rss.php修改下即可,宝塔看的代码48行左右调用icon的地方,地址后加个/p/即可,比如我的就是http://rss.xigeshudong.com/p/,这问题当时我也遇到了,花了些时间才发现地址加个P

    1. 耳朵的主人 的头像

      嘿嘿,这个问题我抄作业的时候看到了,/p/,直接就改了,不然估计又要摸索半天。

    2. Jeffer.Z 的头像

      我明天找文件试试。如果OK。就可以加个头像了。

  9. obaby 的头像

    额。也没那么麻烦。我那个主打一个自己瞎折腾。

    1. Jeffer.Z 的头像

      不要自谦。(*`д´)

  10. Dabenshi 的头像

    啊哈,整起来了…你节奏没跟上

    1. Jeffer.Z 的头像

      你们这些大佬,动不动就手搓代码,我真的跟不上节奏,,,

      1. 耳朵的主人 的头像

        我搓了一晚上,搓到手冻脱皮也没搞好看的样式出来。

      2. Jeffer.Z 的头像

        你要不要试试chatGPT.只要说出想要大概得界面样式,它就会给你写出来,打下手一把好手。你能手搓就不错了,我完全是嘴搓,一遍遍的和Ai说,才实现理想的界面。

      3. Jeffer.Z 的头像

        你起的可真早啊,大清早五点起来搞这个,界面很漂亮,我直接进入是友链,然后点击友链后面动态才是,我开始没发现,然后才发现博友动态四个字。

      4. 007 的头像
        007

        请问一下,chatGPT怎么用,要下软件吗?

      5. Jeffer.Z 的头像

        访问,chatGPT.openai.com,使用谷歌账号登录即可。梯子IP地址需要选择美国。