Top.Mail.Ru
  • CMS «GIRVAS»

    灵活且免费的内容管理系统,可创建任何方向的网站。

    与我们合作更简单!

  • 完全免费

    停止使用旧的和付费的管理系统!新时代的解决方案已经到来 - 选择«GIRVAS»!

  • 卡累利阿解决方案

    «GIRVAS»在卡累利阿共和国开发,并已列入俄罗斯联邦数字发展部的俄罗斯软件登记册(登记号№25012,日期2024年11月27日)。

0.3.0「舒亚」

CMS「GIRVAS」 版本 于 2026年5月12日 发布,开发阶段为「舒亚」。

最新变更

QueryBuilder:新增对 JOIN、CASE 表达式和索引的支持

  • 新增枚举 IndexType,包含索引类型(BTREE、HASH、GIST、GIN、SPGIST、BRIN、FULLTEXT)
  • 新增 ClauseJoin 类,支持 SELECT 查询中的 JOIN 操作(INNER、LEFT、RIGHT、FULL)
  • 实现针对 MySQL 和 PostgreSQL 的自适应 JOIN 条件生成
  • 新增 CaseExpression 类,用于构建 SQL 中的 CASE 表达式
  • 实现 whenJsonLike() 和 whenJsonArrayContains() 方法,用于 JSON 搜索
  • 新增 CaseExpression::sum() 静态方法,用于 CASE 表达式的求和
  • 在 QueryBuilder 中新增工厂方法 createCase()
  • 新增 StatementCreateIndex 类,用于构建 CREATE INDEX 查询
  • 新增 StatementDropIndex 类,用于构建 DROP INDEX 查询
  • 实现对 UNIQUE、CONCURRENTLY、IF NOT EXISTS/IF EXISTS 及带 WHERE 条件部分索引的支持
  • 在 QueryBuilder 中新增 setStatementCreateIndex() 和 setStatementDropIndex() 方法
  • 修复 PostgreSQL 中 addSelections() 对 CASE 表达式的转义问题
  • 在 EntryCategory 类中增加对初始化数据(initData)的缓存

新增内置条目搜索引擎

  • 在 Entries 类中新增 search() 方法,支持本地化的全文搜索
  • 在 Entries 类中新增 getCountBySearch() 方法,用于搜索结果的分页
  • 实现搜索结果按相关性排序,支持自定义字段权重
  • 实现 AND 搜索,支持将查询拆分为单词并考虑标点符号
  • 新增 PageSearch 类,用于显示公共搜索页面
  • 修复 PageSearch 中搜索请求的 URL 解码问题

新增带日期导航的条目归档页面

  • 在 Entries 类中新增 getByDateRange() 和 getCountByDateRange() 方法,用于按时间段查询
  • 在 Entries 类中新增 getAvailableYears() 和 getAvailableMonths() 方法,用于归档导航
  • 新增 PageArchive 类,用于显示归档页面
  • 实现按年和月导航,并统计条目数量
  • getMonthName() 改为公共静态方法,从本地化中获取月份名称
  • 归档导航 buildArchiveNavigation() 已重写为使用 DOMDocument
  • 在站点地图(Sitemap)中新增归档页面(/archive、/archive?year=YYYY、/archive?year=YYYY&month=MM)

新增对子分类的支持及层级面包屑导航

  • 在 Entries 类中新增 getByCategoriesIDs() 和 getCountByCategoriesIDs() 方法
  • 在 EntryCategory 类中新增 getChildCategoriesIDs() 方法,用于递归获取子分类
  • 在 EntryCategory 类中新增 getParentChain() 方法,用于层级面包屑导航
  • 更新 getEntries() 和 getEntriesCount() 方法,增加 includeChildren 参数
  • 分类页面 PageEntries 现在会显示包含子分类的条目
  • 面包屑导航显示从根分类到当前分类的完整层级

新增 CMS 安装时自动创建索引

  • 在安装步骤 6 中,于表生成后新增索引创建块
  • 为表 entries、entries_categories、entries_comments、pages_static 创建索引
  • 为表 users、users_sessions、forms_data、web_channels、metrics 创建索引
  • 为 name、login、email 字段创建唯一索引
  • 为 PostgreSQL 新增对 JSONB 字段的 GIN 索引,以及针对已发布条目的部分索引
  • 所有索引均使用 IF NOT EXISTS 创建,错误将记录日志而不中断安装

在管理后台的「内容」部分中新增子栏目:「内容块」

  • 在「内容」部分中引入了新的子栏目「内容块」

新增内置 SEO 内容分析器,支持 Markdown

  • 实现 SeoAnalyzer 类,用于检查五个方向:标题、Meta 描述、关键词、内容、URL
  • 分析器会检查关键词在 SEO 标题、Meta 描述、h2-h6 标题、首段及全文中的出现情况
  • 重复控制:若 SEO 字段未填写且与主要字段重复,则发出警告
  • Markdown 解析器支持 CMS「GIRVAS」语法中链接和图片的 JSON 属性
  • 检测裸 URL 并建议将其格式化为 Markdown 链接
  • 检查图片的 alt 文本和外部链接的 rel=nofollow
  • 标题层级:h1 已从内容检查中排除,因为由主题生成
  • 每个部分均有颜色指示和进度条
  • 提供包含具体改进步骤的建议区块
  • 完全在客户端运行,无需向服务器发送请求
  • 通过 _t() 实现本地化,使用兼容 PHP 的格式 %s%d%.nf
  • 界面已集成到页面和条目编辑器的侧面板中

修复了若干小错误

上一版本: 0.2.9「沃伊茨」

翻译

评论

此文章暂无评论。