This commit is contained in:
74
.github/workflows/发布wordpress文章.yml
vendored
Normal file
74
.github/workflows/发布wordpress文章.yml
vendored
Normal file
@@ -0,0 +1,74 @@
|
||||
name: 发布wordpress文章
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
generate_changelog:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
# 检出代码
|
||||
- name: 🛒 检出代码
|
||||
uses: https://git.aoun.ltd/actions/checkout@v4
|
||||
|
||||
# 设置时区
|
||||
- name: 设置时区
|
||||
env:
|
||||
TZ: Asia/Shanghai
|
||||
run: date # 验证时区设置是否生效
|
||||
|
||||
# 1. 读取 README.md 内容
|
||||
- name: 读取 README.md 内容
|
||||
id: read_wp
|
||||
run: |
|
||||
CONTENT=$(<README.md)
|
||||
echo "wp_content<<EOF" >> $GITHUB_ENV
|
||||
echo "$CONTENT" >> $GITHUB_ENV
|
||||
echo "EOF" >> $GITHUB_ENV
|
||||
|
||||
# 2. 读取固件版本 DISTRIB_REVISION.txt
|
||||
- name: 读取 DISTRIB_REVISION.txt 中的固件版本
|
||||
id: read_firmware
|
||||
run: |
|
||||
if [ -f DISTRIB_REVISION.txt ]; then
|
||||
FIRMWARE_VERSION=$(sed -n '2p' DISTRIB_REVISION.txt | xargs)
|
||||
echo "firmware_version=$FIRMWARE_VERSION" >> $GITHUB_ENV
|
||||
else
|
||||
echo "固件版本文件不存在,设置默认值" >&2
|
||||
echo "firmware_version=Unknown" >> $GITHUB_ENV
|
||||
fi
|
||||
|
||||
# 3. 更新 WordPress 文章
|
||||
- name: 更新 WordPress 文章
|
||||
env:
|
||||
WORDPRESS_URL: ${{ secrets.WORDPRESS_URL }}
|
||||
WORDPRESS_USERNAME: ${{ secrets.WORDPRESS_USERNAME }}
|
||||
WORDPRESS_PASSWORD: ${{ secrets.WORDPRESS_PASSWORD }}
|
||||
POST_ID: 829 # 替换为文章ID
|
||||
POST_STATUS: "draft" # 设置文章状态为 'publish' (可以更改为 'draft' 或 'pending')
|
||||
run: |
|
||||
# 获取当前中国时间
|
||||
FORMATTED_TIME=$(TZ='Asia/Shanghai' date "+%Y年%m月%d日")
|
||||
|
||||
# 定义更新的数据内容
|
||||
JSON_PAYLOAD=$(jq -n \
|
||||
--arg content "$wp_content" \
|
||||
--arg title "${FORMATTED_TIME}最新每天更新OpenWRT&LEDE x86/64 软路由精品稳定版固件下载含插件" \
|
||||
--arg post_status "$POST_STATUS" \
|
||||
--arg firmware_version "${{ env.firmware_version }}" \
|
||||
--arg kernel_version "6.X" \
|
||||
--arg file_size "1024MB" \
|
||||
--arg update_time "$FORMATTED_TIME" \
|
||||
'{title: $title, description: $content, post_status: $post_status, custom_fields: [{key: "wb_dl_firmware_version", value: $firmware_version}, {key: "wb_dl_kernel_version", value: $kernel_version}, {key: "wb_dl_file_size", value: $file_size}, {key: "wb_dl_update_time", value: $update_time}]}'
|
||||
)
|
||||
|
||||
# 更新 WordPress 文章
|
||||
RESPONSE=$(curl -s -X POST "$WORDPRESS_URL" \
|
||||
--header "Content-Type: application/json" \
|
||||
--user "$WORDPRESS_USERNAME:$WORDPRESS_PASSWORD" \
|
||||
--data "$JSON_PAYLOAD")
|
||||
|
||||
# 检查响应状态
|
||||
echo "$RESPONSE" | jq . || echo "更新失败"
|
||||
Reference in New Issue
Block a user