此网站根据 https://wentaochen.netlify.app/ 于 2026 年 10 月 24 日可访问的公开内容制作。保留原站英文内容与学术信息,网页内容仍为可编辑 HTML;离线浏览和 Python 内容重建不需要 Node.js,在线累计浏览量由 Sites 服务器提供。
public/index.html。页面、图片、站内链接、搜索和论文筛选均可离线使用。public 内所有文件及目录之间的相对位置。原站 71 个站点地图地址及内部链接共发现 73 个可访问页面。另有两个原地址返回 404:/slides/ 和 /others/publications/publication/。前者已补充入口,后者已改为正确的论文列表地址。原站空白的 Netlify CMS 管理入口已改为本地文件编辑助手。外部研究平台上的 PDF 保留为外链,不包含未公开的论文文件。
适合修改现有网页的文字、链接、图片地址,以及复制现有条目。
public/editor.html。public。public/assets/images/,建议文件名只用英文、数字、连字符。index.html,需要放回对应论文子目录。index.html 即网站入口,上传其所在的整个目录即可部署。可视化编辑助手在浏览器中本地处理文件。它没有后台账户、服务器写入或自动发布功能。编辑内容在当前页面会话中暂存,关闭前请下载。在线预览中也可以编辑并下载单页;导出完整 ZIP 仍需先选择本地文件夹。
注意:可视化修改直接更新 public 的成品 HTML。如果后续运行 build.py,这些直接修改会被 content 中的源内容覆盖。请选择下面的源内容方式做长期维护,或始终使用上面的可视化方式;不要在未同步修改的情况下混用。
content/site.json 保存个人资料、各栏目列表及论文/项目/报告/活动的结构化信息;content/pages/ 保存各详情页面的完整正文。content/home/ 保存奖项、任职、经历和联系方式的正文。
| 需要修改的内容 | 编辑位置 |
| 姓名、职位、单位、个人简介、研究兴趣、教育背景、学术平台 | content/site.json → profile |
| 论文、项目、报告、活动的标题、日期、摘要简介、作者与链接 | content/site.json → records |
| Activities 详情页的 Date、Event、Location 及 Event 链接 | 对应活动记录的 activity_details → date、event、location、url |
| Projects 详情页的 Fund 基金名称及链接 | 对应项目记录的 fund_details → name、url |
| 首页展示哪些论文/项目/报告/活动及排序 | content/site.json → home_lists |
| 论文摘要、项目介绍、报告摘要、活动全文及图片 | content/pages/对应原网址路径/body.html |
| 奖项、学术任职、经历、联系栏 | content/home/对应栏目.html |
| 首页及独立图库的 Gallery 图片与顺序 | content/home/gallery.html;两处共用同一份图片列表,原图放在 public/assets/gallery/;图片单行横向滑动,点击查看原图;复制或调整 .gallery-item 即可添加或排序。 |
| Experience 单位 logo | 图片保存在 public/assets/logos/;在 content/home/experience.html 中修改对应图片的 src。 |
| 全站颜色、字体、间距及手机布局 | public/assets/site.css |
| 全站导航、页脚及生成规则 | build.py |
JSON 字符串中的换行写为 \n;双引号写为 \",路径使用 /。没有特殊需求时保留原有字段。
修改后运行 python build.py。Windows 可双击 rebuild.bat;macOS/Linux 可运行 sh rebuild.sh。仅重建需要 Python 3.9 及以上,无需安装任何第三方包。生成后的 public 就是最终网站。
content/site.json 的 records 中复制一篇论文对象,修改 path、title、date、authors、summary、fields、links 和 image。kind 填 publication;fields.Type 可填 Journal article 或 Conference paper;fields.Publication 填期刊或会议名。pages 数组复制一条论文页面记录,修改 path、title、body_file;新页面的 path 必须与论文对象一致。content/pages/publication/新论文英文短名称/ 新建 body.html,复制已有论文正文后修改,保留合适的 HTML 标签。建议从结构相近的论文复制。请同时更新正文中的标题、作者、发表日期、摘要、DOI 与图片;列表元数据与详情正文分别控制这两处展示。public/assets/images/,image 及正文中使用 /assets/images/图片名.jpg。home_lists.featured 添加其 path。records 用于列表的标题和简介,home_lists 用于选择与排序。python build.py,搜索索引及论文列表会一起更新。新活动、报告、项目同理,kind 分别为 activities、talk、project。
Activities 详情页在正文之后统一显示 Date、Event、Location。修改对应记录的 activity_details 即可更新这三行;url 是点击 Event 名称后打开的地址。date 支持日期范围,location 中可用 \n 换行。新增活动时复制已有活动记录和正文,保留正文中的 <!-- ACTIVITY_DETAILS --> 标记,重建时会自动填入详情信息。首页及 View all 的活动日期同样读取 activity_details.date,与详情页保持一致;原有的 date 继续控制列表排序。
Projects 详情页的 Fund 信息读取对应项目的 fund_details:name 是显示的基金名称,url 是点击名称后打开的地址。修改后重建即可同步更新页面和搜索索引。新增项目时复制已有项目记录和正文,并保留正文中的 <!-- PROJECT_FUND --> 标记。项目详情页不显示顶部日期,摘要使用一个完整段落。
邮箱在个人资料、联系栏和某些详情页作者卡片中分别出现。修改 profile.email 之外,也请搜索 content 中的旧邮箱并同步替换。首页数量由 records 自动计算。
所有学术页面的页脚显示 Total views。从功能启用后开始,每次打开或刷新一个页面累计一次;这是页面浏览量(PV),不是独立访客人数。不同浏览器和设备共享服务器计数,重新发布不会重置。
计数仅保存总数及开始时间,不保存访客 IP、身份或逐次访问记录。接口暂不可用时显示 Unavailable;离线打开时显示 Online only。在线版本通过本站 /api/site-views 和 D1 数据库保存计数。
python build.py 重建 HTML 后,Sites 在线版另运行 npm run build。若只将 public/ 上传到其他静态平台,需要另部署计数接口及数据库;当前计数不会随 HTML ZIP 自动迁移。
public 文件夹作为新的静态站点部署上传;手动拖拽部署时上传 public 文件夹,而不是整个源代码项目。netlify.toml 已设置发布目录为 public,无需 npm 安装和前端构建命令。content/site.json 的 source_url,重建后 sitemap.xml 会采用新域名。本次制作提供一个独立的预览版本,没有修改原 Netlify 站点的账户和部署。
migration/migration-report.json:抓取范围、原站不可用地址及链接修复记录。migration/original-pages/:原站抓取到的 HTML 留存,用于核对,不作为新版网站入口。migration/original-sitemap.xml:原站站点地图。migration/original-search-index.json:原站的内容索引。migration/validation-report.json:交付前的本地链接、资源及正文完整性检查结果。新版修正了原站部分 DOI 链接的重复 https://doi.org/ 前缀。论文题名、作者、摘要与学术表述按原站内容保留;没有根据聊天记录擅自添加未在原站出现的最新成果。原站的内容许可与作者归属保留在页脚。
| 路径 | 用途 |
public/index.html | 双击即可打开的网站首页 |
public/editor.html | 本地可视化编辑助手 |
public/maintenance.html | 浏览器版中文更新说明 |
public/assets/ | 全站样式、脚本、图片和其他资源 |
public/publication/ | 论文列表与详情页 |
public/project/ | 项目列表与详情页 |
public/event/、public/talk/ | 报告列表与详情页 |
public/activities/ | 学术活动列表与详情页 |
content/ | 可批量维护并重新生成的源内容 |
build.py | 无第三方依赖的重建脚本 |
migration/ | 原站内容留存与核对记录 |