V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
zhaoolee
V2EX  ›  分享创造

利用 Github Actions 写 Markdown 文章,自动更新到 WordPress

  •  
  •   zhaoolee ·
    zhaoolee · 2021-02-05 14:37:17 +08:00 · 783 次点击
    这是一个创建于 1166 天前的主题,其中的信息可能已经有所发展或是发生改变。

    用 Github Actions 写 Markdown 文章,自动更新到 WordPress

    • 写博客最舒服的格式是 Markdown ;

    • 管理博客站最省心的方式是 WordPress ;

    • 推广博客站最好的平台是 Github ;

    这个项目可以让你用 Markdown 写博客,push 更新到 Github 后,Github Actions 自动将文章更新到 WordPress,并将 WordPres 站的文章索引更新到 Github 仓库的 README.md ,供搜索引擎收录。

    image-20210119181051609

    程序永久开源更新地址

    https://github.com/zhaoolee/WordPressXMLRPCTools

    如何实现 WordPress 登录授权?

    WordPress 默认开启了 xmlrpc 服务,xmlrpc 是一套的统用的博客更新标准,允许用户以 POST 方式自动对文章内容进行增删改查。授权方式为 用户名 和 密码, 在 WordPress 中是后台登录的账户名和密码

    我的 WordPress 网站为 https://fangyuanxiaozhan.com

    image-20210119180338929

    它的 xmlrpc 服务地址为 https://fangyuanxiaozhan.com/xmlrpc.php

    image-20210119180403270

    使用 Github Actions 有什么好处?

    Github Actions 可以让我们无需安装开发环境,即可完成代码的运行。

    image-20210119180656968

    对于本项目而言,我可以用手机版 Git App,或者 Github 网页完成新建文章, 然后 push 到仓库,Github Actions 会自动帮我完成相关代码运行,代码可以帮我更新文章到 WordPress 网站,并生成新的文章目录索引,并自动给你更新到 README.md, 供搜索引擎收录。

    image-20210119180529083

    如何保护自己的 WordPress 账户密码?

    Github 有一个 secrets 功能,可以将用户名密码等关键信息保护起来,只有 Github Actions 可以读取到关键信息。

    本项目需要设置三个 secret

    • WordPress 登录用户名, 变量名为 USERNAME
    • WordPress 登录密码,变量名为 PASSWORD
    • WordPress 的 xmlrpc.php ,变量名为 XMLRPC_PHP

    image-20210119173133800

    如何新建文章?

    _post 目录下新建 后缀为 .md 的 markdown 文件即可

    image-20210119181544158

    文章管理:如何为文章分类 /加关键词标签?

    .md 文件顶部填写以下初始化信息,即可完成标题( title ),标签( tags ),分类( categories )的设置,其中 title 为必填项目(这些关键词不是我定义的,我借用了著名静态博客构建工具 hexo 的标准)

    ---
    title: 我是标题
    tags: 
    - 我是 0 号标签关键词
    - 我是 1 号标签关键词
    - 我是 2 号标签关键词
    categories:
    - 我是 1 号分类
    - 我是 2 号分类
    ---
    
    

    标签(tags)和分类(categories)有什么区别?

    标签(tags)是针对单篇文章的关键词,比如香蕉的标签有 黄色味甜 (标签是香蕉的属性) 分类(categories)是本篇文章的归属,比如香蕉的分类为 水果植物

    image-20210119182027684

    如何设置固定链接?

    对于博客而言,文章拥有一个固定的链接,是很重要的,我经过各种尝试,最终借鉴了 简书 的文章 url 形式,域名后加 /p/ , 再加英文文件名,只要不改变英文文件名,文章就有固定的链接,我在_posts 目录下新建一个 2020-01-18-blog.md 文件,同步后的文章 url 为

    https://fangyuanxiaozhan.com/p/2020-01-18-blog/

    文件名与网站 url 严格对应,既方便了修改,又可以在网站数据库出事故后,迅速从 github 仓库迅速恢复文章内容(容灾),连 url 都不会变。

    image-20210119171713841

    如何使用?

    完成以上配置后

    每次在_posts 文件夹新增或更新文章后,运行

    git pull && git add _posts && git commit -m "update" && git push
    

    image-20210119182503520

    即可!

    image-20210119182653436

    Github README.md 显示效果,(新增的文章排在首位)

    image-20210119184015781

    WordPress 网站也同步发布了文章

    image-20210119182849720

    https://fangyuanxiaozhan.com/p/2020-01-19-18-00-wordpressxmlrpctools/

    如何用手机完成博客更新操作?

    微信图片_20210119192838

    用锤子便签,可以优雅舒适地写 Markdown,手机 App 很好用,还有网页版可以用,有 5GB 的免费空间,能写到锤子倒闭。

    如果遇到插入图片的问题,可以使用 免费图床图壳

    https://imgkr.com/#upload

    Pocket Git 和 MT 管理器可以配合完成 Git 文件的新增更新和上传。

    程序永久开源更新地址(求 Star):

    https://github.com/zhaoolee/WordPressXMLRPCTools

    当我们把毕生所学,通过几十年如一日的博客更新,逐步开源到互联网上时,必将会造福更多志同道合的人。

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2479 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 50ms · UTC 16:10 · PVG 00:10 · LAX 09:10 · JFK 12:10
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.