跳转至

新增文章操作说明

本文档详细说明如何使用自动化工具为网站添加新文章,以及如何管理现有文章。

目录

  1. 使用自动化脚本添加文章(推荐)
  2. 手动添加文章
  3. 文章格式说明
  4. 常见问题解答
  5. 故障排除

使用自动化脚本添加文章(推荐)

步骤1:登录服务器

使用SSH登录到服务器:

ssh 用户名@服务器IP

步骤2:运行添加文章脚本

cd /var/www/mkdocs
sudo python3 add_article.py

步骤3:按照提示输入文章信息

脚本会引导您输入以下信息:

  1. 选择文章分类
  2. 输入数字选择分类(1: Delphi相关, 2: AI应用相关, 3: 人生感悟, 4: 营销策划)

  3. 输入文章标题

  4. 输入完整的文章标题,如"Delphi中的AI图像处理技术"

  5. 输入文章描述

  6. 输入简短的文章描述,将显示在文章列表中

  7. 输入文件名(可选):

  8. 如果不输入,系统会根据标题自动生成
  9. 建议使用英文、数字和连字符,如"delphi-ai-image-processing"

步骤4:编辑文章内容

脚本会询问是否立即编辑文件:

是否立即编辑文件? (y/n):
  • 如果选择 y,系统会打开默认编辑器(通常是nano)
  • 在编辑器中,文件已经包含了正确的frontmatter,您只需要在"在这里编写文章内容..."下方添加您的文章内容
  • 使用Markdown格式编写文章
  • 在nano编辑器中,按 Ctrl+O 保存,然后按 Ctrl+X 退出

步骤5:更新网站

脚本会询问是否立即更新网站:

是否立即更新网站? (y/n):
  • 如果选择 y,系统会自动运行更新脚本
  • 更新脚本会:
  • 扫描所有文章并按日期排序
  • 更新首页HTML,将最新文章显示在首页
  • 更新导航配置
  • 重新构建网站

完成

添加文章完成后,您可以访问网站查看新文章。新文章会根据日期自动排序,最新的文章会显示在首页。

手动添加文章

如果自动化脚本出现问题,您也可以手动添加文章。

步骤1:创建Markdown文件

cd /var/www/mkdocs/docs/blog/[分类目录]
# 分类目录可以是:delphi, ai, insights, marketing
sudo nano 文件名.md

步骤2:添加frontmatter元数据

在文件开头添加以下内容:

---
title: 文章标题
description: 文章描述
date: YYYY-MM-DD  # 使用当前日期,格式为年-月-日
categories:
  - 分类名称  # 如:Delphi相关, AI应用相关, 人生感悟, 营销策划
image: https://picsum.photos/800/400?random=123  # 可以更改random后的数字
---

# 文章标题

在这里编写文章内容...

步骤3:编写文章内容

使用Markdown格式编写文章内容。

步骤4:保存文件

在nano编辑器中,按 Ctrl+O 保存,然后按 Ctrl+X 退出。

步骤5:运行自动更新脚本

cd /var/www/mkdocs
sudo python3 auto_update.py

文章格式说明

Markdown基础语法

  • 标题:使用 # 符号,如 # 一级标题## 二级标题
  • 粗体:使用 **文本**
  • 斜体:使用 *文本*
  • 链接:使用 [链接文本](URL)
  • 图片:使用 ![替代文本](图片URL)
  • 列表:使用 - 项目1. 项目
  • 代码块:使用三个反引号 ``` 包围代码,可以指定语言,如:
    ```delphi
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      ShowMessage('Hello World');
    end;
    ```
    

Frontmatter说明

Frontmatter是文章开头的YAML格式元数据,包含在两组 --- 之间:

  • title:文章标题,将显示在网页标题和文章顶部
  • description:文章描述,将显示在文章列表中
  • date:发布日期,格式为 YYYY-MM-DD,用于文章排序
  • categories:文章分类,可以包含多个分类
  • image:文章缩略图,将显示在文章列表中

示例:

---
title: Delphi与ChatGPT集成指南
description: 本文详细介绍如何在Delphi应用中集成ChatGPT API,实现智能对话和自动化功能
date: 2024-05-01
categories:
  - Delphi相关
  - AI应用相关
image: https://picsum.photos/800/400?random=101
---

常见问题解答

Q: 如何修改已发布的文章?

A: 直接编辑对应的Markdown文件,然后运行自动更新脚本:

cd /var/www/mkdocs
sudo nano docs/blog/[分类目录]/[文件名].md
# 编辑完成后
sudo python3 auto_update.py

Q: 如何删除文章?

A: 删除对应的Markdown文件,然后运行自动更新脚本:

cd /var/www/mkdocs
sudo rm docs/blog/[分类目录]/[文件名].md
sudo python3 auto_update.py

Q: 如何更改文章的发布日期?

A: 编辑文件中的frontmatter部分,修改date字段,然后运行自动更新脚本。

Q: 如何添加新的分类?

A: 需要修改以下文件:

  1. /var/www/mkdocs/add_article.py:添加新的分类到CATEGORIES和CATEGORY_NAMES字典
  2. /var/www/mkdocs/auto_update.py:添加新的分类到CATEGORIES列表
  3. /var/www/mkdocs/mkdocs.yml:在导航配置中添加新的分类

Q: 如何在文章中添加图片?

A: 有两种方法:

  1. 使用外部图片链接:

    ![图片描述](https://example.com/image.jpg)
    

  2. 使用本地图片:

  3. 将图片放在 /var/www/mkdocs/docs/assets/images/ 目录下
  4. 在文章中引用:
    ![图片描述](/assets/images/image.jpg)
    

故障排除

自动更新脚本失败

如果自动更新脚本失败,请检查以下几点:

  1. 权限问题:确保脚本有执行权限

    sudo chmod +x /var/www/mkdocs/auto_update.py
    sudo chmod +x /var/www/mkdocs/add_article.py
    

  2. 依赖问题:确保已安装所需的Python包

    sudo pip3 install beautifulsoup4 pyyaml
    

  3. 文件格式问题:确保Markdown文件的frontmatter格式正确

  4. 手动更新:如果自动脚本仍然失败,可以尝试手动更新

    cd /var/www/mkdocs
    sudo -u www-data ./venv/bin/mkdocs build
    

文章不显示在首页

如果新文章没有显示在首页,请检查以下几点:

  1. 日期格式:确保frontmatter中的date字段格式正确(YYYY-MM-DD)
  2. 文章数量:如果有太多更新的文章,您的文章可能显示在"更多文章"部分
  3. 手动运行更新脚本
    cd /var/www/mkdocs
    sudo python3 auto_update.py
    

网站无法访问

如果网站无法访问,请检查以下几点:

  1. Nginx状态

    sudo systemctl status nginx
    

  2. 重启Nginx

    sudo systemctl restart nginx
    

  3. 检查日志

    sudo tail -n 100 /var/log/nginx/error.log
    


如有其他问题,请联系网站管理员。