友链·导航书签·站点入口维护

1064 字
5 分钟
友链·导航书签·站点入口维护

📖 本文管什么#

把站点里所有「链接集合」和「身份入口」收在一起讲——友链、导航书签、顶部菜单、简介与社交链接。它们都是配置文件里的一组数组,维护方式高度相似:改数组 → git 三连


一、友链(src/config/friendsConfig.ts#

友链是一个对象数组,每项大概长这样:

{
name: "示例站点", // 站点名
url: "https://example.com",
avatar: "https://cdn.xxx.top/page/01-example.webp", // 头像
description: "一句话介绍",
}

加 / 改 / 删友链#

操作做法
数组末尾加一个对象
改对应对象字段
去掉对应对象
排序一般按数组顺序,想置顶就挪到前面

⚠️ 头像一定要本地化(重要)#

不要把外链头像直接填进去。别人的头像热链到你的页面,一是依赖对方服务器、随时裂图,二是每次访问都打对方站、不礼貌也慢。

正确姿势:

  1. 把对方头像下载 → 转成 webp
  2. 传图床上传到 page/ 目录
  3. avatar 填成你图床的本地链接(命名规范见 R2 图床运营规范

已上传的本地头像也叫不回来了——所以对没配头像的友链、或头像失效的,都用「下载 → 转 webp → 传 page/」流程修。

本站自己在别人站里的信息#

友链是双向的:别人挂你,你也得在自己页面放「本站信息」给别人抄——在 src/content/spec/friends.mdx 里维护 site 对象(站点名、网址、头像、邮箱、一句话介绍)。


二、导航书签页(src/config/booknavConfig.ts#

/booknav/ 页面是个收藏夹,两级结构:分组 → 组内书签。

export const booknavConfig = [
{
id: "dev", // 分组锚点 id
name: "开发", // 分组名
items: [ // 组内的书签
{ title: "GitHub", url: "https://github.com" },
{ title: "某文档", url: "https://example.com",
icon: "fa7-brands:github", // 可选,留空自动取目标 favicon
desc: "说明", weight: 1, enabled: true },
],
},
];
  • 书签 icon 留空会自动抓目标站 favicon
  • weight 越大排越前(默认 0);enabled: false 可暂时隐藏一条
  • 增删书签 = 增删 items 里的对象

三、顶部导航菜单(src/config/navBarConfig.ts#

页面顶部菜单项也在这里:

export const navBarConfig = {
links: [
{ name: "全览", url: "/posts/", icon: "…" },
{ name: "外部链接", url: "https://example.com", external: true }, // 外部
{ name: "带子菜单", url: "#", children: [ /* 子菜单项 */ ] },
],
};
  • 菜单项 = links 数组里的对象;children 支持二级子菜单
  • external: true 的项会在新窗口打开
  • 首页那几个「板块入口」若有独立配置在页面文件里,改动入口时会单独说明,不在这个文件

四、简介与社交链接(src/config/profileConfig.ts#

侧栏的「个人资料卡」内容在这:

export const profileConfig = {
avatar: "/assets/xxx.webp", // 头像(本地放 public/assets/ 或图床链接)
name: "站点主人",
bio: "主页一句话简介",
sidebarBio: "侧栏简介,留空则复用 bio", // 想主页和侧栏文案不同就填它
links: [
{ name: "GitHub", url: "https://github.com/…", icon: "fa7-brands:github" },
{ name: "Email", url: "mailto:…", icon: "…" },
],
};
  • sidebarBio:主页 bio 和侧栏简介想显示不同文字时用(留空回退到 bio
  • links:侧栏资料卡的图标链接。注意主页首屏的社交图标可能是另一处(主页背景配置里的 homeText 链接)——两处入口位置不同,都认 name/url 结构

改邮箱 / 社交号等个人资料后,记得 profileConfig.links、主页 hero 社交图标、以及 friends.mdx 里的本站信息是三处独立的,别只改一处。


五、页脚与音乐歌单#

想改什么文件说明
页脚底部自定义(备案号等)src/config/footerConfig.tscustomHtml 直接写 HTML
换网易云歌单src/config/musicConfig.ts改歌单 id 即可(播放走第三方接口,主题负责拉取渲染)

换歌单:在网易云把歌单设成公开 → 复制歌单 id → 填进 musicConfig 对应字段 → 本地预览确认能加载 → git 三连。


✅ 速记#

  • 友链、导航书签、顶部菜单、社交链接 = 四个配置文件里的数组,增删都是「加/减一个对象」
  • 友链头像必须本地化:下载 → 转 webp → 传图床 page/
  • 个人资料有多处副本(侧栏 profile / 主页 hero / friends.mdx),改一处记得核对其它
  • 全部改完统一 git 三连上线

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!

打赏
友链·导航书签·站点入口维护
https://hecloud.top/posts/guide/maintenance-links-nav/
作者
贺小云
发布于
2026-09-07
许可协议
CC BY-NC-SA 4.0

评论区

Profile Image of the Author
贺小云
热爱技术与折腾的博客 Dancing with uncertainty. 与不确定性共舞
公告
出于成本考虑,贺云已全面转型Serverless架构
分类
标签
碎碎念
站点统计
文章
68
分类
6
标签
38
总字数
46,536
运行时长
0
最后活动
0 天前
站点信息
构建平台
GitHub Actions
博客版本
Firefly v6.16.5
文章许可
CC BY-NC-SA 4.0