PHPackages                             easyadmin8/easyadmin8\_blog - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. easyadmin8/easyadmin8\_blog

ActiveProject

easyadmin8/easyadmin8\_blog
===========================

EasyAdmin8 blog system

v1.0.2(1mo ago)00MITPHPPHP &gt;=8.2.0

Since Jul 16Pushed 1mo agoCompare

[ Source](https://github.com/easyadmin8/EasyAdmin8-Blog)[ Packagist](https://packagist.org/packages/easyadmin8/easyadmin8_blog)[ Docs](https://easyadmin8.top/)[ RSS](/packages/easyadmin8-easyadmin8-blog/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (3)Dependencies (40)Versions (4)Used By (0)

[![EasyAdmin8-Blog](public/static/common/images/logo-8.png)](public/static/common/images/logo-8.png)[![PHP](https://camo.githubusercontent.com/66022e18c572ed52d06d05ade892b8d16930b903434af2fabf1285384ea7830f/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7068702d2533453d382e322e302d627269676874677265656e2e7376673f7374796c653d666f722d7468652d6261646765266c6f676f3d70687026636f6c6f72423d666636396234)](https://camo.githubusercontent.com/66022e18c572ed52d06d05ade892b8d16930b903434af2fabf1285384ea7830f/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7068702d2533453d382e322e302d627269676874677265656e2e7376673f7374796c653d666f722d7468652d6261646765266c6f676f3d70687026636f6c6f72423d666636396234)[![ThinkPHP](https://camo.githubusercontent.com/89253e5a9f31347ec1dee5c2e6618d5b64f485692fda954520f117471986b817/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5468696e6b5048502d2533453d382e312e302d627269676874677265656e2e7376673f7374796c653d666f722d7468652d6261646765266c6f676f3d7468696e6b706870)](https://camo.githubusercontent.com/89253e5a9f31347ec1dee5c2e6618d5b64f485692fda954520f117471986b817/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5468696e6b5048502d2533453d382e312e302d627269676874677265656e2e7376673f7374796c653d666f722d7468652d6261646765266c6f676f3d7468696e6b706870)[![Layui](https://camo.githubusercontent.com/a441e7c85ae7e471409d772b38347233496f4d647ae75d81a3abb339782282f5/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c617975692d322e782d627269676874677265656e2e7376673f7374796c653d666f722d7468652d6261646765266c6f676f3d6c6179756926636f6c6f72423d6f72616e6765)](https://camo.githubusercontent.com/a441e7c85ae7e471409d772b38347233496f4d647ae75d81a3abb339782282f5/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c617975692d322e782d627269676874677265656e2e7376673f7374796c653d666f722d7468652d6261646765266c6f676f3d6c6179756926636f6c6f72423d6f72616e6765)[![MySQL](https://camo.githubusercontent.com/c0f9b1cca62c959078f32f1d510be01ef26a220dae141788a92b73af52f5f681/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4d7953514c2d2533453d352e372d627269676874677265656e2e7376673f7374796c653d666f722d7468652d6261646765266c6f676f3d6d7973716c26636f6c6f72423d626c7565)](https://camo.githubusercontent.com/c0f9b1cca62c959078f32f1d510be01ef26a220dae141788a92b73af52f5f681/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4d7953514c2d2533453d352e372d627269676874677265656e2e7376673f7374796c653d666f722d7468652d6261646765266c6f676f3d6d7973716c26636f6c6f72423d626c7565)[![PostgreSQL](https://camo.githubusercontent.com/4eea83240fba427835ca4d851dd22c09426ad26e47e7514361a87ec747f74b78/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f506f737467726553514c2d2533453d31322e302d627269676874677265656e2e7376673f7374796c653d666f722d7468652d6261646765266c6f676f3d506f737467726553514c26636f6c6f72423d79656c6c6f77)](https://camo.githubusercontent.com/4eea83240fba427835ca4d851dd22c09426ad26e47e7514361a87ec747f74b78/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f506f737467726553514c2d2533453d31322e302d627269676874677265656e2e7376673f7374796c653d666f722d7468652d6261646765266c6f676f3d506f737467726553514c26636f6c6f72423d79656c6c6f77)[![License](https://camo.githubusercontent.com/70794c969ebeab312fbf1be9bf61f8a93b837683d589aa88358cad8cdaa9b3bb/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d677265656e3f7374796c653d666f722d7468652d6261646765266c6f676f3d6c6963656e736526636f6c6f72423d707572706c65)](https://camo.githubusercontent.com/70794c969ebeab312fbf1be9bf61f8a93b837683d589aa88358cad8cdaa9b3bb/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d677265656e3f7374796c653d666f722d7468652d6261646765266c6f676f3d6c6963656e736526636f6c6f72423d707572706c65)

---

简介
--

[](#简介)

**EasyAdmin8-Blog** 是基于 [EasyAdmin8](https://github.com/EasyAdmin8/EasyAdmin8) 扩展的博客系统，集成了完整的博客前台与后台管理功能。在 EasyAdmin8 后台框架的基础上，新增了文章管理、分类管理、标签管理、友情链接、模板切换等博客模块，开箱即用。

- **后台管理**：基于 ThinkPHP 8.1+ 和 Layui 2.x 的后台管理系统，包含 RBAC 权限控制、操作日志、CURD 代码生成器等完整功能。
- **博客前台**：支持 3 套可切换的主题模板（极简 / 杂志 / 暗色编辑风），响应式设计，SEO 友好。
- **AI 集成**：内置 NeuronAI 接入，支持 AI 日志分析、商品智能优化等功能。

> 预览地址：
>
> 后台地址：
>
> 项目地址：
>
> 项目地址：
>
> EasyAdmin8 官网：

环境要求
----

[](#环境要求)

依赖版本要求PHP&gt;= 8.2.0MySQL&gt;= 5.7PostgreSQL&gt;= 12.0ThinkPHP&gt;= 8.1.0Layui&gt;= 2.x安装
--

[](#安装)

### 1. 下载

[](#1-下载)

```
git clone https://gitee.com/EasyAdmin8/EasyAdmin8-Blog

cd EasyAdmin8-Blog
```

### 2. 安装依赖

[](#2-安装依赖)

```
composer install
```

> 如果出现版本冲突，可尝试：`composer install --ignore-platform-reqs`

### 3. 配置环境

[](#3-配置环境)

复制 `.example.env` 为 `.env`，修改数据库连接信息：

```
cp .example.env .env
```

关键配置项：

```
DB_TYPE = mysql
DB_HOST = 127.0.0.1
DB_NAME = easyadmin8_blog
DB_USER = root
DB_PASS = your_password
DB_PORT = 3306
DB_PREFIX = ea8_
DB_CHARSET = utf8mb4
```

### 4. 配置 Web 服务器

[](#4-配置-web-服务器)

**Nginx 配置示例**：

```
server {
    listen 80;
    server_name your-domain.com;
    root /path/to/EasyAdmin8-Blog/public;
    index index.php index.html;

    location / {
        if (!-e $request_filename) {
            rewrite ^/(.*)$ /index.php?s=$1 last;
        }
    }
}
```

**Apache**：已内置 `.htaccess`，无需额外配置（确保 `mod_rewrite` 已启用）。

### 5. 访问安装

[](#5-访问安装)

浏览器访问 `http://your-domain.com/install`，按向导完成数据库初始化和管理员设置。

安装完成后会自动写入 `config/install/lock/install.lock`，如需重新安装删除该文件即可。

项目结构
----

[](#项目结构)

```
EasyAdmin8-Blog/
├── app/
│   ├── admin/                    # 后台应用
│   │   ├── controller/
│   │   │   ├── Ajax.php          # AJAX 接口
│   │   │   ├── Index.php         # 仪表盘
│   │   │   ├── Login.php         # 登录/退出
│   │   │   ├── blog/             # 博客管理（文章/分类/标签/链接/模板/配置）
│   │   │   ├── mall/             # 商城管理（分类/商品）
│   │   │   └── system/           # 系统管理（管理员/权限/菜单/节点/配置/日志/上传等）
│   │   ├── middleware/            # 中间件（登录验证/权限验证/操作日志/限流）
│   │   ├── model/                # 数据模型
│   │   ├── service/              # 服务层（AI/注解/权限/CRUD生成/上传）
│   │   └── traits/Curd.php       # 通用 CRUD Trait
│   ├── index/                    # 前台博客应用
│   │   └── controller/
│   │       ├── Index.php         # 博客首页
│   │       ├── Post.php          # 文章详情/分类/标签/关于
│   │       └── Install.php       # Web 安装向导
│   └── common/                   # 公共代码
│       ├── controller/
│       ├── model/TimeModel.php   # 基础模型（软删除 + 自动时间戳）
│       └── service/              # 权限/菜单服务
├── config/                       # 配置文件
│   └── install/sql/              # 安装 SQL 脚本
├── route/app.php                 # 路由定义
├── view/
│   └── index/
│       ├── template1/            # 主题一：极简风格
│       ├── template2/            # 主题二：杂志风格
│       ├── template3/            # 主题三：暗色编辑风格
│       ├── install/              # 安装向导页面
│       └── miss.html             # 404 页面
├── public/static/                # 前端资源
│   ├── admin/                    # 后台资源
│   ├── blog/                     # 博客前台资源
│   ├── common/                   # 公共资源
│   └── plugs/                    # 第三方插件（jQuery/Layui/CKEditor/ECharts 等）
├── skill/                        # AI 技能文档（注解/CURD/权限/文件上传/模型/日志/定时任务等）
├── crontab/                      # 定时任务脚本
├── .env                          # 环境配置
└── composer.json

```

博客功能
----

[](#博客功能)

### 前台

[](#前台)

- **文章展示**：列表分页、文章详情（支持 Slug 美化 URL）、浏览量统计、上/下篇导航
- **分类 &amp; 标签**：按分类/标签筛选文章
- **推荐 &amp; 置顶**：文章支持置顶和推荐标记
- **友情链接**：可配置的友链模块
- **关于页面**：自定义关于页内容
- **404 页面**：自定义 404 错误页，支持明暗主题切换
- **响应式设计**：完美适配桌面和移动端
- **暗黑模式**：模板三内置深色主题，支持阅读进度条
- **SEO 友好**：语义化 HTML、自定义 keywords/description

### 后台

[](#后台)

模块功能文章管理发布/草稿/置顶/推荐/回收站/导出分类管理分类增删改查、别名（Slug）管理标签管理标签增删改查友情链接链接增删改查模板管理3 套主题一键切换基础配置博客标题/副标题/SEO/社交链接/版权信息等### 主题模板

[](#主题模板)

模板风格特点template1极简干净清爽的阅读体验template2杂志富有设计感的内容展示template3暗色编辑深色主题 + 翡翠绿配色 + 阅读进度条系统功能
----

[](#系统功能)

### 后台管理

[](#后台管理)

- **RBAC 权限控制**：管理员 / 角色 / 菜单 / 节点，基于 PHP 8 注解自动扫描
- **操作日志**：中间件自动记录，按月分表，支持 AI 智能分析
- **CURD 代码生成器**：可视化 Web 界面 + CLI 命令，一键生成控制器/模型/视图
- **任务调度**：可视化管理定时任务，支持 Windows / Linux
- **多文件上传**：本地 / 阿里云 OSS / 腾讯云 COS / 七牛云
- **多富文本编辑器**：CKEditor / UEditor / wangEditor / EasyMDE
- **Google 2FA**：两步验证登录
- **Cloudflare Turnstile**：人机验证
- **请求限流**：可选 Redis 限流器
- **Demo 模式**：开启后后台为只读状态
- **快捷入口**：仪表盘自定义快捷链接

### 环境变量（.env）

[](#环境变量env)

```
# 调试模式
APP_DEBUG = true

# 数据库
DB_TYPE = mysql
DB_HOST = 127.0.0.1
DB_NAME = easyadmin8_blog
DB_USER = root
DB_PASS = root
DB_PORT = 3306
DB_PREFIX = ea8_

# Redis（可选，限流器需要）
RATE_LIMITING_STATUS = false
REDIS_HOST = 127.0.0.1
REDIS_PORT = 6379

# AI 配置（可替换为任意 OpenAI 兼容接口）
DASHSCOPE_API_URL = https://dashscope.aliyuntest.com/api/v1
DASHSCOPE_API_KEY = your_api_key_here
DASHSCOPE_API_MODEL = qwen-plus

# Cloudflare Turnstile（可选）
CF_TURNSTILE_STATUS = false

# 后台配置
[EASYADMIN]
ADMIN = admin          # 后台地址后缀
CAPTCHA = false        # 验证码开关
IS_DEMO = false        # 演示环境（开启后后台只读）

# CSRF 防护
IS_CSRF = false        # CSRF 开关
```

CURD 命令
-------

[](#curd-命令)

```
# 生成完整 CRUD（控制器 + 模型 + 视图）
php think curd -t 表名

# 指定应用和前缀
php think curd -t 表名 -m admin -p ea8_
```

更多参数参考：[CURD 命令大全](https://edocs.easyadmin8.top/curd/command.html)

EasyAdmin8 生态
-------------

[](#easyadmin8-生态)

版本GitHubGiteeThinkPHP[EasyAdmin8](https://github.com/EasyAdmin8/EasyAdmin8)[EasyAdmin8](https://gitee.com/EasyAdmin8/EasyAdmin8)Laravel[EasyAdmin8-Laravel](https://github.com/EasyAdmin8/EasyAdmin8-Laravel)[EasyAdmin8-Laravel](https://gitee.com/EasyAdmin8/EasyAdmin8-Laravel)Webman[EasyAdmin8-webman](https://github.com/EasyAdmin8/EasyAdmin8-webman)[EasyAdmin8-webman](https://gitee.com/EasyAdmin8/EasyAdmin8-webman)相关文档
----

[](#相关文档)

- [ThinkPHP 8 文档](https://doc.thinkphp.cn)
- [Layui 2.x 文档](https://layui.dev/docs)
- [EasyAdmin 文档](http://easyadmin.99php.cn/docs)
- [Doctrine Annotations](https://github.com/doctrine/annotations)

常见问题
----

[](#常见问题)

[常见问题列表](https://easyadmin8.top/guide/question.html)

更新日志
----

[](#更新日志)

[更新记录](log.md)

预览
--

[](#预览)

[![EasyAdmin8-01](public/static/common/images/EasyBlog.png)](public/static/common/images/EasyBlog.png)[![EasyAdmin8-02](public/static/common/images/EasyBlog-Admin.png)](public/static/common/images/EasyBlog-Admin.png)

交流
--

[](#交流)

[![EasyAdmin8-ThinkPHP 交流群](public/static/common/images/EasyAdmin8-ThinkPHP.png)](public/static/common/images/EasyAdmin8-ThinkPHP.png)

许可证
---

[](#许可证)

[MIT License](LICENSE)

Copyright (c) 2020 EasyAdmin

###  Health Score

38

—

LowBetter than 82% of packages

Maintenance92

Actively maintained with recent releases

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~2 days

Total

3

Last Release

42d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/120efb64d81a9a893c2b64ca5e85db8574bde280628221e3897b9230487f01fd?d=identicon)[wolfcode](/maintainers/wolfcode)

---

Top Contributors

[![wolf-leo](https://avatars.githubusercontent.com/u/37436228?v=4)](https://github.com/wolf-leo "wolf-leo (11 commits)")

---

Tags

blogphpthinkphpblogthinkphpEasyAdmin8

### Embed Badge

![Health badge](/badges/easyadmin8-easyadmin8-blog/health.svg)

```
[![Health](https://phpackages.com/badges/easyadmin8-easyadmin8-blog/health.svg)](https://phpackages.com/packages/easyadmin8-easyadmin8-blog)
```

###  Alternatives

[solspace/craft-freeform

The most flexible and user-friendly form building plugin!

54691.6k28](/packages/solspace-craft-freeform)[craftcms/cms

Craft CMS

3.6k3.7M3.5k](/packages/craftcms-cms)[saithink/saiadmin

webman plugin

28412.2k1](/packages/saithink-saiadmin)[zhongshaofa/easyadmin

基于ThinkPHP6.0和layui的快速开发的后台管理系统。

6609.3k](/packages/zhongshaofa-easyadmin)[exceedone/exment

Management for Product, Client, Contracts, Subscription, ...

28039.6k](/packages/exceedone-exment)[zoujingli/think-library

Core library and common services for ThinkAdmin

8575.7k20](/packages/zoujingli-think-library)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
