一、整体流程
读取Cookie → 构造请求 → 发送签到 → 解析响应 → 推送结果 → 退出
二、核心实现逻辑
1. 准备阶段
-
Cookie:硬编码在代码中(第2行),包含 WordPress 登录凭证
wordpress_sec_xxx和wordpress_logged_in_xxx -
企业微信机器人:Webhook 地址用于推送签到结果
-
签到 URL:
https://www.zibll.com/wp-admin/admin-ajax.php(WordPress 的 Ajax 接口)
2. 签到请求
$postData = http_build_query([ 'action' => 'user_checkin', // 触发子比主题的签到动作 ]);
通过 POST 方式发送 action=user_checkin 参数,携带有效的 Cookie 模拟已登录用户。
3. 响应处理
根据返回的 JSON 判断结果:
-
成功条件:
$data['error'] === false或msg === '今日已签到' -
提取数据:积分(points)和经验(integral)
4. 结果推送
通过 pushWeCom() 函数发送到企业微信:
-
成功:推送签到时间、结果、积分、经验
-
失败:推送失败原因(Cookie 为空、网络异常、非 JSON 响应等)
三、技术原理
| 技术点 | 作用 |
|---|---|
| Cookie 模拟登录 | 绕过登录验证,让服务器认为请求来自已登录用户 |
| WordPress Ajax 接口 | 子比主题注册了 user_checkin 动作,调用即触发签到逻辑 |
| cURL | 发送 HTTP POST 请求,模拟浏览器行为 |
| 企业微信机器人 | Webhook 方式推送消息到群聊 |
四、退出码含义
| 退出码 | 含义 |
|---|---|
| 0 | 签到成功或今日已签 |
| 1 | Cookie 为空 |
| 2 | 网络请求异常 |
| 3 | 返回非 JSON 格式 |
| 4 | 签到请求被拒绝或失败 |
五、典型使用场景
配合 Linux Cron 或 GitHub Actions 每日自动执行,实现:
-
自动获取网站签到积分
-
推送签到结果到企业微信通知
-
无需手动打开网页
⚠️ 注意事项
-
Cookie 有效期:登录凭证会过期,需要定期更新 Cookie(一般10天左右)
-
安全风险:Cookie 相当于密码,注意泄漏的可能
-
依赖主题:仅适用于 WordPress + 子比(zibll)主题
-
反爬机制:若网站增加验证码或频率限制,脚本将失效
接下来看图-使用教程



企业微信的webhook通知自行填写即可,cookie是会过期的,这看脸,可能几天/几周/一个月都有可能,主要还是看环境吧,我是本地运行的cookie还没过期过
源码
THE END




![一键安装宝塔、安装环境、搭建 WordPress 免费工具[超强工具]-常瑞云博客](https://oss.zibll.com/zibll.com/2026/06/20260612230605138-image-41.png)

