LeafCMS GitHub 开始安装
Docs

系统里的说明

下面和后台「说明」是同一套:怎么用、后台每一栏、主题、模板标签,以及环境和安装。

前台长什么样由主题决定,栏目和文章由内容模型决定。侧栏每一项见「后台」,换外观见「主题」,改 Blade 见「模板」,取数据见「标签」。

第一次建议按这个顺序

  1. 设置 里改网站名称、一句话介绍。
  2. 主题 选一套外观,点「用于本站」。缺的模型会自动补上,已有文章不会清掉。
  3. 栏目 建频道(新闻、产品、关于我们)。栏目要勾模型,列表页才知道用哪套字段。
  4. 内容 写文章。有发布权的人点发布,编辑默认只能存草稿或待审。
  5. 打开前台看效果。换主题后还是旧样子,到缓存清空。

安装时勾了演示数据,前台已经有栏目和文章,改文案即可。空站则从栏目开始建。侧栏没有的项是当前账号没权限。

侧栏对应什么

位置做什么
内容栏目、文章、标签、媒体、留言、评论。更多里有推荐、推荐位、模型、导航、表单、回收站。
运营会员、采集、缓存(页面缓存和磁盘静态页)。更多里有友链、地图、跳转、分组。
系统站点、设置、主题、语言、日志、管理员、权限,以及本页说明。说明不跟权限走,所以留在系统最底下。

栏目和文章

栏目类型常见三种:列表出文档列表,单页只显示一篇(如关于我们),外链点过去是别的网址。一篇文章有一个主栏目(决定网址),也可以勾附加栏目,出现在多个列表里。

模型决定字段。文章模型一般是标题、封面、正文;产品会多价格等。模型可以复制、导出 JSON、再导入,不会删已有文档。

定时发布:发布时间没到,前台是 404。草稿可生成预览链接,不计入浏览、不进缓存。

导航、推荐位、表单

栏目勾「菜单」后,主题里 @cmsMenu 没配导航时会拿这些栏目当顶栏。要精确控制顺序,用导航建 header 菜单。

首页 Banner、最新新闻这类区块用推荐位,标识要和模板里的 name 对上,例如 home_banner。手填条目点「选择」从媒体库挑图,保存前能看到预览;模板里用 cms_media($item->image) 输出。

首页友情链接 / 合作伙伴走侧栏「运营 → 更多 → 友链」,数据存在推荐位 partners(没有则用 friend_links)。这和导航站主题里的「链接」模型不是一回事:那个是网址目录。

联系表单在表单里建,前台用 @cmsForm 按标识输出。提交进「留言」。评论默认待审核,可在设置里开关。搜索引擎用的地址清单在「运营 → 更多 → 地图」。

会员

前台 /member 可注册登录。模型勾「允许会员投稿」且分组有投稿权限后,会员能写稿,后台审过再发布。设置里可开评论、游客评论。

多站、备份、缓存

站点按域名分站,栏目和文章带站点隔离。顶栏可切换当前编辑站。备份、robots.txt 补充规则都在设置 → 更多;备份也可用命令 php artisan cms:backup。缓存、静态页生成都在缓存,nginx 和对象存储见「环境」。

常见问题

换了主题,前台还是旧样子

页面缓存还在。到缓存点「清空缓存」,或执行 php artisan cms:html-clear。

写了文章前台看不到

确认已发布(不是草稿/待审),发布时间已到,且挂在对的栏目。编辑账号默认没有发布权,需要超管或有「发布内容」权限的人点发布。

图片或上传文件 404

项目根执行过 php artisan storage:link,且 storage、bootstrap/cache 可写。配了 CDN 时检查「设置」里的资源域名。若 .env 写了 CMS_MEDIA_DISK=s3,文件不在本机 public/storage,要核对桶名和 AWS_URL。

推荐位、表单是空的

后台标识要和模板参数一致:推荐位 name(如 home_banner),表单 slug(如 contact)。没启用或没条目也不会显示。手填推荐位有图却前台空白时,模板请用 cms_media($item->image),不要写死本机路径。

不想让搜索引擎抓某几页

打开前台 /robots.txt 先看默认规则(后台、会员、安装、预览已经禁止)。再在设置 → 更多写「robots.txt 补充规则」,例如 Disallow: /private。关站时整站仍是 Disallow: /。不要写 HTML 标签。收录范围在「运营 → 更多 → 地图」。

站点地图在哪

搜索引擎看 /sitemap.xml(英文站是 /en/sitemap.xml)。给人看的目录是 /sitemap,可在后台关掉,页脚链接会一起消失。勾选栏目 / 文章 / 标签、加补充地址,都在侧栏「运营 → 更多 → 地图」(这项就叫地图)。会员才能看的文章、没有公开文章的标签不会列入。栏目标识不要写成 sitemap。

想重新跑安装向导

删掉 storage/app/install.lock 后再打开 /install。已有数据不会自动清空,正式站不要这样做。

上线打开是目录或 404

网站根必须指到项目的 public,不要指到项目根。完整 nginx / PHP / MySQL 见「环境」。

飞机群 @sanpang