WellCMS 3.0 分类信息发布插件


插件简介


这是一个功能完整的分类信息发布插件,支持登录用户发布包含价格、联系方式、有效期、图片上传、地理位置等信息,具备后台管理、审核功能、过期处理、用户管理和搜索筛选功能。

功能特性


核心功能


  • ✅ 单级分类结构(平铺)
  • ✅ 登录用户即可发布
  • ✅ 支持价格、联系方式、有效期、图片上传、地理位置字段
  • ✅ 后台管理、审核功能、过期处理、用户管理、搜索筛选

技术特性


  • ✅ 遵循 WellCMS 3.0 核心二十四项铁律
  • ✅ 使用原子 Service 层架构
  • ✅ 路由元数据驱动的权限控制
  • ✅ CSRF 防护
  • ✅ 数据库索引优化
  • ✅ 多语言支持(中文、英文)

安装步骤


1. 上传插件文件


将 `well_classifieds` 文件夹上传到 WellCMS 的 `plugins/` 目录下。

2. 安装插件


登录 WellCMS 后台,进入"插件管理",找到"分类信息发布"插件,点击"安装"。

3. 配置权限


安装完成后,插件会自动为管理员用户组添加以下权限:
  • `classifieds_admin`:分类信息管理权限
  • `classifieds_audit`:分类信息审核权限

如果需要为其他用户组添加权限,可以在后台"用户组管理"中手动配置。

使用说明


前台功能


发布信息


  • 访问 `/classifieds/publish`(需要登录)
  • 填写信息表单,包括:
  • 分类选择
  • 标题(必填)
  • 详细描述
  • 价格
  • 联系人(必填)
  • 联系电话(必填)
  • 微信号
  • 地理位置(省份、城市、区县、详细地址、经纬度)
  • 图片上传(最多 9 张)
  • 有效期(7-365 天)
  • 点击"发布"按钮提交

浏览信息


  • 访问 `/classifieds/` 查看所有已发布的信息
  • 支持按分类、价格范围、地区筛选
  • 支持关键词搜索

查看详情


  • 点击信息标题进入详情页
  • 详情页显示完整信息和所有图片
  • 自动更新浏览次数

我的发布


  • 访问 `/classifieds/my` 查看自己发布的信息
  • 支持按状态筛选(待审核、已发布、已拒绝、已下架)
  • 可以编辑和删除自己的信息

后台功能


信息管理


  • 访问 `/admin/classifieds/list`(需要管理员权限)
  • 查看所有信息
  • 支持按分类、状态、关键词筛选
  • 可以删除信息

信息审核


  • 访问 `/admin/classifieds/audit`(需要审核权限)
  • 查看待审核的信息
  • 可以通过或拒绝审核
  • 查看信息详情和图片

配置说明


插件配置位于 `plugins/well_classifieds/config.json`:
RTEPLACEHOLDER0
修改配置后需要重新编译缓存。

数据库表结构


分类表(wellclassifiedscategory)


  • `id`:分类ID
  • `name`:分类名称
  • `icon`:分类图标
  • `sort`:排序
  • `status`:状态(0禁用 1启用)
  • `created_at`:创建时间

信息主表(wellclassifiedsinfo)


  • `id`:信息ID
  • `user_id`:发布用户ID
  • `category_id`:分类ID
  • `title`:标题
  • `content`:详细描述
  • `price`:价格
  • `contact_name`:联系人
  • `contact_phone`:联系电话
  • `contact_wechat`:微信号
  • `province`:省份
  • `city`:城市
  • `district`:区县
  • `address`:详细地址
  • `latitude`:纬度
  • `longitude`:经度
  • `status`:状态(0待审核 1已发布 2已拒绝 3已下架)
  • `expire_at`:过期时间
  • `view_count`:浏览次数
  • `created_at`:发布时间
  • `updated_at`:更新时间

图片表(wellclassifiedsimage)


  • `id`:图片ID
  • `info_id`:信息ID
  • `image_path`:图片路径
  • `sort`:排序
  • `created_at`:上传时间

路由列表


前台路由


  • `GET /classifieds/`:信息列表
  • `GET /classifieds/category`:分类列表
  • `GET /classifieds/detail`:信息详情
  • `GET /classifieds/publish`:发布页面(需要登录)
  • `GET /classifieds/my`:我的发布(需要登录)
  • `GET /classifieds/edit`:编辑页面(需要登录)
  • `POST /classifieds/postPublish`:提交发布(需要 CSRF)
  • `POST /classifieds/postEdit`:提交编辑(需要 CSRF)
  • `POST /classifieds/postDelete`:删除信息(需要 CSRF)

后台路由


  • `GET /admin/classifieds/list`:信息列表(需要管理员权限)
  • `GET /admin/classifieds/audit`:审核列表(需要审核权限)
  • `POST /admin/classifieds/postApprove`:通过审核(需要 CSRF)
  • `POST /admin/classifieds/postReject`:拒绝审核(需要 CSRF)
  • `POST /admin/classifieds/postDelete`:删除信息(需要 CSRF)

API 响应格式


所有 API 响应都遵循统一的格式:
RTEPLACEHOLDER1

注意事项


  1. 权限控制:所有权限都在路由层通过中间件控制,控制器内不要重复判断权限
  2. CSRF 防护:所有 POST 请求都需要 CSRF Token,在路由层自动校验
  3. 索引优化:所有查询条件都对齐数据库索引顺序,确保查询性能
  4. 图片上传:支持 JPG、PNG、GIF、WEBP 格式,单张图片最大 5MB
  5. 过期处理:信息过期后会自动下架,状态变为 3(已下架)

技术支持


如有问题,请访问 WellCMS 官方网站或社区获取支持。

版本历史


v1.0.0 (2026-06-23)


  • 初始版本发布
  • 实现核心功能:发布、列表、详情、管理、审核
  • 支持图片上传、地理位置、价格等字段
  • 实现多语言支持(中文、英文)

许可证


本插件遵循 WellCMS 3.0 许可证。


开发者:WellCMS 开发团队
版本:1.0.0
兼容性:WellCMS 3.0+