当前位置:网站首页>ModStartCMS 主题入门开发教程
ModStartCMS 主题入门开发教程
2022-06-24 03:34:00 【ModStartCMS】
快速创建主题
安装模块开发助手
模块开发助手可以极大效率的提高模块开发效率,在后台安装 模块开发助手。
创建主题模块
使用 模块开发助手 可以快速的创建主题主题模块。
通过 系统管理 → 模块开发助手 → 新建CMS主题模块 可以完成主题模块的快速创建。



完成主题模块代码开发
第二步会根据填写的主题模块基本信息完成模块的创建,并且生成一些示例代码,通过修改和完善模块代码,完成模块的功能开发

主题模块的开发请参照 CmsThemeDemo,该示例中涵盖了主题模块开发的示例。
开发示例程序会不断更新,请随时查看最新的开发示例程序。
模板开发语法
主题使用了 blade 语法,具体语法可参照 视图开发
模板信息
站点基本信息
适用范围:任意页面
// 网站名称
{
{ modstart_config('siteName') }}
// 网站Logo
{
{ modstart_config('siteLogo') }}
// 网站副标题
{
{ modstart_config('siteSlogan') }}
// 网站域名
{
{ modstart_config('siteDomain') }}
// 网站关键词
{
{ modstart_config('siteKeywords') }}
// 网站描述
{
{ modstart_config('siteDescription') }}
// 备案编号
{
{ modstart_config('siteBeian') }}
// 网站ICO
{
{ modstart_config('siteFavIco') }}
// 网站主色调
{
{ modstart_config('sitePrimaryColor') }}
// 网站主题
{
{ modstart_config('siteTemplate') }}
CMS 基本信息
适用范围:任意页面
// 企业名称
{
{ modstart_config('Cms_CompanyName') }}
// 企业邮箱
{
{ modstart_config('Cms_ContactEmail') }}
// 企业电话
{
{ modstart_config('Cms_ContactPhone') }}
// 企业地址
{
{ modstart_config('Cms_ContactAddress') }}
// 企业传真
{
{ modstart_config('Cms_ContactFax') }}
// 联系人
{
{ modstart_config('Cms_ContactContactPerson') }}
// 企业联系QQ
{
{ modstart_config('Cms_ContactQQ') }}
// 企业介绍标题
{
{ modstart_config('Cms_HomeInfoTitle') }}
// 企业介绍图片
{
{ modstart_config('Cms_HomeInfoImage') }}
// 企业介绍说明
{
{ modstart_config('Cms_HomeInfoContent') }}
导航
适用范围:任意页面
循环显示导航
@foreach(\MNav::all('home') as $nav)
<a href="{
{ $nav['link'] }}">{
{ $nav['name'] }}</a>
@endforeach
可用变量
| 变量 | 说明 |
|---|---|
$nav['name'] | 导航名称 |
$nav['link'] | 导航链接 |
$nav['_child'] | 子导航(空表示只有一级导航,不为空表示为二级导航) |
$nav['openType'] | 打开方式(2 = 新窗口 其他值 = 当前窗口) |
二级嵌套
@foreach(\MNav::all('home') as $nav)
@if(empty($nav['_child']))
<!-- 无二级导航 -->
<a href="{
{ $nav['link'] }}">{
{ $nav['name'] }}</a>
@else
<!-- 有二级导航 -->
<div class="title">
<a href="{
{$nav['link']}}">{
{$nav['name']}}</a>
</div>
<div class="child">
@foreach($nav['_child'] as $child)
<a href="{
{$child['link']}}">{
{$child['name']}}</a>
@endforeach
</div>
@endif
@endforeach
高亮菜单
当前 URL 匹配链接时输出 CSS 类 active
@foreach(\MNav::all('home') as $nav)
<a href="{
{ $nav['link'] }}" class="{
{modstart_baseurl_active($nav['link'],'active')}}">{
{ $nav['name'] }}</a>
@endforeach
更多使用可参考 Nav 模块
轮播图片
适用范围:任意页面
循环显示轮播
@foreach(\MBanner::all('home') as $banner)
<a href="{
{ $banner['link'] }}">{
{ $banner['image'] }}</a>
@endforeach
更多使用可参考 Banner 模块
友情链接
适用范围:任意页面
循环显示友情链接
@foreach(\MPartner::all('home') as $partner)
<a href="{
{ $partner['link'] }}">{
{ $partner['title'] }}</a>
@endforeach
更多使用可参考 Partner 模块
站点地图
启用网站需要安装 SiteMapManager 模块获得支持,设置后访问路径如下:
http://www.example.com/sitemap.xml
系统使用动态站点地图,不需要手动生成,访问地址即为实时地图,输出格式为 xml 格式。具体使用方式可参考 SiteMapManager (opens new window) 模块的使用方法。

当前栏目
适用范围:在列表页或详情页使用
可用变量
| 变量 | 说明 |
|---|---|
$cat['id'] | 栏目 ID |
$cat['pid'] | 父级栏目 ID |
$cat['title'] | 栏目标题 |
$cat['url'] | 栏目 URL |
$cat['modelId'] | 栏目模型 ID |
$cat['seoTitle'] | SEO 标题 |
$cat['seoDescription'] | SEO 描述 |
$cat['seoKeywords'] | SEO 关键词 |
$cat['icon'] | 栏目图标 |
$cat['cover'] | 栏目封面 |
$cat['subTitle'] | 栏目子标题 |
$cat['bannerBg'] | 栏目 Banner 背景 |
$cat['_model'] | 栏目模型 |
$cat['_model']['title'] | 栏目模型名称 |
$cat['_model']['name'] | 栏目模型标识 |
指定栏目
适用范围:任意页面
// 根据栏目ID获取栏目信息
<?php $cat = MCms::getCat(1); ?>
// 根据栏目URL获取栏目信息
<?php $cat = MCms::getCatByUrl('news'); ?>
可用变量
| 变量 | 说明 |
|---|---|
$cat['id'] | 栏目 ID |
$cat['pid'] | 父级栏目 ID |
$cat['title'] | 栏目标题 |
$cat['url'] | 栏目 URL |
$cat['modelId'] | 栏目模型 ID |
$cat['seoTitle'] | SEO 标题 |
$cat['seoDescription'] | SEO 描述 |
$cat['seoKeywords'] | SEO 关键词 |
$cat['icon'] | 栏目图标 |
$cat['cover'] | 栏目封面 |
$cat['subTitle'] | 栏目子标题 |
$cat['bannerBg'] | 栏目 Banner 背景 |
$cat['_model'] | 栏目模型 |
$cat['_model']['title'] | 栏目模型名称 |
$cat['_model']['name'] | 栏目模型标识 |
内容列表
适用范围:列表页
循环输入内容列表
@foreach($records as $record)
<a href="{
{$record['_url']}}">{
{$record['title']}}</a>
@endforeach
可用变量
| 变量 | 说明 |
|---|---|
$records | 内容记录数组 |
$records[*]['id'] | 内容 ID |
$records[*]['created_at'] | 创建时间 |
$records[*]['updated_at'] | 更新时间 |
$records[*]['catId'] | 栏目 ID |
$records[*]['modelId'] | 模型 ID |
$records[*]['title'] | 标题 |
$records[*]['summary'] | 摘要 |
$records[*]['cover'] | 封面 |
$records[*]['postTime'] | 发布时间 |
$records[*]['wordCount'] | 字数 |
$records[*]['viewCount'] | 浏览次数 |
$records[*]['commentCount'] | 评论数 |
$records[*]['likeCount'] | 喜欢数 |
$records[*]['isRecommend'] | 是否推荐 |
$records[*]['isTop'] | 是否置顶 |
$records[*]['tags'] | 标签数组 |
$records[*]['author'] | 作者 |
$records[*]['source'] | 来源 |
$records[*]['seoTitle'] | SEO 标题 |
$records[*]['seoDescription'] | SEO 描述 |
$records[*]['seoKeywords'] | SEO 关键词 |
$records[*]['_url'] | 内容 URL |
$records[*]['_day'] | 内容发布日期 |
分页条
适用范围:列表页
输入分页条
<?php $pageHtml ?>
当前列表分页 HTML 数据
<div class="pages">
<a href="?page=1">1</a>
<span>2</span>
<a href="?page=1">3</a>
</div>
如果使用系统完整分页条,则以上样式名称在输出的 HTML 代码中都带,可以直接使用对应名称在自己的 css 中定义具体样式即可。
可用变量
| 变量 | 说明 |
|---|---|
$page | 当前页数 |
$pageSize | 分页大小 |
$pageNextUrl | 下一页 URL |
$pagePrevUrl | 上一页 URL |
内容详情
适用范围:内容页
标题:{
{ $record['title'] }}
内容:{
{ $record['content'] }}
可用变量
| 变量 | 说明 |
|---|---|
$record['id'] | 内容 ID |
$record['created_at'] | 创建时间 |
$record['updated_at'] | 更新时间 |
$record['catId'] | 栏目 ID |
$record['modelId'] | 模型 ID |
$record['title'] | 标题 |
$record['summary'] | 摘要 |
$record['cover'] | 封面 |
$record['postTime'] | 发布时间 |
$record['wordCount'] | 字数 |
$record['viewCount'] | 浏览次数 |
$record['commentCount'] | 评论数 |
$record['likeCount'] | 喜欢数 |
$record['isRecommend'] | 是否推荐 |
$record['isTop'] | 是否置顶 |
$record['tags'] | 标签数组 |
$record['author'] | 作者 |
$record['source'] | 来源 |
$record['seoTitle'] | SEO 标题 |
$record['seoDescription'] | SEO 描述 |
$record['seoKeywords'] | SEO 关键词 |
$record['_data']['content'] | 内容 |
$record['_data']['xxx'] | 其他字段 |
指定内容
适用范围:任意页面
// 根据ID获取内容
<?php $record = \MCms::get(1); ?>
可用变量
| 变量 | 说明 |
|---|---|
$record['id'] | 内容 ID |
$record['created_at'] | 创建时间 |
$record['updated_at'] | 更新时间 |
$record['catId'] | 栏目 ID |
$record['modelId'] | 模型 ID |
$record['title'] | 标题 |
$record['summary'] | 摘要 |
$record['cover'] | 封面 |
$record['postTime'] | 发布时间 |
$record['wordCount'] | 字数 |
$record['viewCount'] | 浏览次数 |
$record['commentCount'] | 评论数 |
$record['likeCount'] | 喜欢数 |
$record['isRecommend'] | 是否推荐 |
$record['isTop'] | 是否置顶 |
$record['tags'] | 标签数组 |
$record['author'] | 作者 |
$record['source'] | 来源 |
$record['seoTitle'] | SEO 标题 |
$record['seoDescription'] | SEO 描述 |
$record['seoKeywords'] | SEO 关键词 |
$record['_data']['content'] | 内容 |
$record['_data']['xxx'] | 其他字段 |
留言本
适用范围:所有页面
<form action="{
{ modstart_web_url('cms/form/submit',['cat'=>7]) }}"
method="post" data-ajax-form>
手机:<input type="text" name="phone" >
姓名:<input type="text" name="name" >
内容:<input type="text" name="content" >
<button type="submit">提交</button>
</form>
留言本使用了通用模型 id = 7 的内容模型,如过手动调整过内容模型,请自行修改代码。
表单详情
适用范围:表单页
@foreach($cat['_model']['_customFields'] as $customField)
@if($customField['fieldType']==\Module\Cms\Type\CmsModelFieldType::TEXT)
<!-- 文本字段 -->
<div>
{
{$customField['title']}}
:
<input class="form" type="text" name="{
{$customField['name']}}" />
</div>
@else
<!-- 其他字段 -->
@endif
@endforeach
具体可参照 通用表单模板
可用变量
| 变量 | 说明 |
|---|---|
$customField['modelId'] | 模型 ID |
$customField['title'] | 字段名 |
$customField['name'] | 字段 |
$customField['fieldType'] | 字段类型 |
$customField['fieldData'] | 字段数据 |
$customField['isRequired'] | 必填 |
$customField['placeholder'] | 输入提示 |
用户
适用范围:所有页面
@if(\Module\Member\Auth\MemberUser::isLogin())
欢迎,{
{$_memberUser['username']}}
@else
请登录
@endif
可用变量
| 变量 | 说明 |
|---|---|
$_memberUserId | 用户 ID,可以判断该变量是否为空来判断用户是否登录 |
$_memberUser['id'] | 用户 ID |
$_memberUser['username'] | 用户名 |
$_memberUser['avatar'] | 头像 |
可用地址
| 地址 | 说明 |
|---|---|
/login | 登录页面 |
/register | 注册页面 |
/member | 用户中心 |
更多使用可参考 Member
字段显示
适用范围:任意页面
单行文本、多行文本、单选按钮、下拉选择、日期、日期时间、文件、视频、音频
{
{ $record['_data']['xxx'] }}
标签显示
@foreach($record['_tag'] as $tag)
{
{ $tag }}
@endforeach
多选按钮
@foreach($record['_data']['xxx'] as $item)
{
{ $item }}
@endforeach
图片
<img src="{
{ $record['_data']['xxx'] }}" />
多图
@foreach($record['_data']['xxx'] as $item)
<img src="{
{ $item }}" />
@endforeach
富文本
<?php $record['_data']['xxx'] ?>
手机主题
主题默认主题为响应式主题。
电脑端主题默认路径为 module/Xxx/View/pc/cms/ 中,如需要启用独立的手机端,只需要将所有视图文件按照该相同的结构放置在 module/Xxx/View/m/cms/ 中即可。
API 接口
CMS 操作方法
获取内容 get
根据内容 ID 获取单条内容信息
<?php $record = \MCms::get($recordId); ?>
可用变量
| 变量 | 说明 |
|---|---|
$record['id'] | 内容 ID |
$record['created_at'] | 创建时间 |
$record['updated_at'] | 更新时间 |
$record['catId'] | 栏目 ID |
$record['modelId'] | 模型 ID |
$record['title'] | 标题 |
$record['summary'] | 摘要 |
$record['cover'] | 封面 |
$record['postTime'] | 发布时间 |
$record['wordCount'] | 字数 |
$record['viewCount'] | 浏览次数 |
$record['commentCount'] | 评论数 |
$record['likeCount'] | 喜欢数 |
$record['isRecommend'] | 是否推荐 |
$record['isTop'] | 是否置顶 |
$record['tags'] | 标签数组 |
$record['author'] | 作者 |
$record['source'] | 来源 |
$record['seoTitle'] | SEO 标题 |
$record['seoDescription'] | SEO 描述 |
$record['seoKeywords'] | SEO 关键词 |
$record['_data']['content'] | 内容 |
$record['_data']['xxx'] | 其他字段 |
列表 listCatByUrl
根据栏目 URL 获取内容列表(不包含副表字段),包含子栏目
<?php $records = \MCms::listCatByUrl($catUrl, $page = 1, $pageSize = 10, $option = []); ?>
可用变量
| 变量 | 说明 |
|---|---|
$records | 内容记录数组 |
$records[*]['id'] | 内容 ID |
$records[*]['created_at'] | 创建时间 |
$records[*]['updated_at'] | 更新时间 |
$records[*]['catId'] | 栏目 ID |
$records[*]['modelId'] | 模型 ID |
$records[*]['title'] | 标题 |
$records[*]['summary'] | 摘要 |
$records[*]['cover'] | 封面 |
$records[*]['postTime'] | 发布时间 |
$records[*]['wordCount'] | 字数 |
$records[*]['viewCount'] | 浏览次数 |
$records[*]['commentCount'] | 评论数 |
$records[*]['likeCount'] | 喜欢数 |
$records[*]['isRecommend'] | 是否推荐 |
$records[*]['isTop'] | 是否置顶 |
$records[*]['tags'] | 标签数组 |
$records[*]['author'] | 作者 |
$records[*]['source'] | 来源 |
$records[*]['seoTitle'] | SEO 标题 |
$records[*]['seoDescription'] | SEO 描述 |
$records[*]['seoKeywords'] | SEO 关键词 |
$records[*]['_url'] | 内容 URL |
$records[*]['_day'] | 内容发布日期 |
列表 listCat
根据栏目 ID 获取内容列表(不包含副表字段),包含子栏目
<?php $records = \MCms::listCat($catId, $page = 1, $pageSize = 10, $option = []); ?>
可用变量
| 变量 | 说明 |
|---|---|
$records | 内容记录数组 |
$records[*]['id'] | 内容 ID |
$records[*]['created_at'] | 创建时间 |
$records[*]['updated_at'] | 更新时间 |
$records[*]['catId'] | 栏目 ID |
$records[*]['modelId'] | 模型 ID |
$records[*]['title'] | 标题 |
$records[*]['summary'] | 摘要 |
$records[*]['cover'] | 封面 |
$records[*]['postTime'] | 发布时间 |
$records[*]['wordCount'] | 字数 |
$records[*]['viewCount'] | 浏览次数 |
$records[*]['commentCount'] | 评论数 |
$records[*]['likeCount'] | 喜欢数 |
$records[*]['isRecommend'] | 是否推荐 |
$records[*]['isTop'] | 是否置顶 |
$records[*]['tags'] | 标签数组 |
$records[*]['author'] | 作者 |
$records[*]['source'] | 来源 |
$records[*]['seoTitle'] | SEO 标题 |
$records[*]['seoDescription'] | SEO 描述 |
$records[*]['seoKeywords'] | SEO 关键词 |
$records[*]['_url'] | 内容 URL |
$records[*]['_day'] | 内容发布日期 |
列表 pageCat
根据栏目 ID 获取内容列表(不包含副表字段),包含子栏目
<?php $paginateData = \MCms::pageCat($catId, $page = 1, $pageSize = 10, $option = []) ?>
<?php $records = $paginateData['records']; ?>
<?php $total = $paginateData['total']; ?>
基本属性变量
| 变量 | 说明 |
|---|---|
$total | 总页数 |
内容记录变量
| 变量 | 说明 |
|---|---|
$records | 内容记录数组 |
$records[*]['id'] | 内容 ID |
$records[*]['created_at'] | 创建时间 |
$records[*]['updated_at'] | 更新时间 |
$records[*]['catId'] | 栏目 ID |
$records[*]['modelId'] | 模型 ID |
$records[*]['title'] | 标题 |
$records[*]['summary'] | 摘要 |
$records[*]['cover'] | 封面 |
$records[*]['postTime'] | 发布时间 |
$records[*]['wordCount'] | 字数 |
$records[*]['viewCount'] | 浏览次数 |
$records[*]['commentCount'] | 评论数 |
$records[*]['likeCount'] | 喜欢数 |
$records[*]['isRecommend'] | 是否推荐 |
$records[*]['isTop'] | 是否置顶 |
$records[*]['tags'] | 标签数组 |
$records[*]['author'] | 作者 |
$records[*]['source'] | 来源 |
$records[*]['seoTitle'] | SEO 标题 |
$records[*]['seoDescription'] | SEO 描述 |
$records[*]['seoKeywords'] | SEO 关键词 |
$records[*]['_url'] | 内容 URL |
$records[*]['_day'] | 内容发布日期 |
列表 pageCatByUrl
根据栏目 URL 获取内容列表(不包含副表字段),包含子栏目
<?php $paginateData = \MCms::pageCatByUrl($catUrl, $page = 1, $pageSize = 10, $option = []); ?>
<?php $records = $paginateData['records']; ?>
<?php $total = $paginateData['total']; ?>
基本属性变量
| 变量 | 说明 |
|---|---|
$total | 总页数 |
内容记录变量
| 变量 | 说明 |
|---|---|
$records | 内容记录数组 |
$records[*]['id'] | 内容 ID |
$records[*]['created_at'] | 创建时间 |
$records[*]['updated_at'] | 更新时间 |
$records[*]['catId'] | 栏目 ID |
$records[*]['modelId'] | 模型 ID |
$records[*]['title'] | 标题 |
$records[*]['summary'] | 摘要 |
$records[*]['cover'] | 封面 |
$records[*]['postTime'] | 发布时间 |
$records[*]['wordCount'] | 字数 |
$records[*]['viewCount'] | 浏览次数 |
$records[*]['commentCount'] | 评论数 |
$records[*]['likeCount'] | 喜欢数 |
$records[*]['isRecommend'] | 是否推荐 |
$records[*]['isTop'] | 是否置顶 |
$records[*]['tags'] | 标签数组 |
$records[*]['author'] | 作者 |
$records[*]['source'] | 来源 |
$records[*]['seoTitle'] | SEO 标题 |
$records[*]['seoDescription'] | SEO 描述 |
$records[*]['seoKeywords'] | SEO 关键词 |
$records[*]['_url'] | 内容 URL |
$records[*]['_day'] | 内容发布日期 |
列表 pageCatWithData
根据栏目 ID 获取内容列表(包含副表字段),不包含子栏目
<?php $paginateData = \MCms::pageCatWithData($catId, $page = 1, $pageSize = 10, $option = []); ?>
<?php $records = $paginateData['records']; ?>
<?php $total = $paginateData['total']; ?>
基本属性变量
| 变量 | 说明 |
|---|---|
$total | 总页数 |
内容记录变量
| 变量 | 说明 |
|---|---|
$records | 内容记录数组 |
$records[*]['id'] | 内容 ID |
$records[*]['created_at'] | 创建时间 |
$records[*]['updated_at'] | 更新时间 |
$records[*]['catId'] | 栏目 ID |
$records[*]['modelId'] | 模型 ID |
$records[*]['title'] | 标题 |
$records[*]['summary'] | 摘要 |
$records[*]['cover'] | 封面 |
$records[*]['postTime'] | 发布时间 |
$records[*]['wordCount'] | 字数 |
$records[*]['viewCount'] | 浏览次数 |
$records[*]['commentCount'] | 评论数 |
$records[*]['likeCount'] | 喜欢数 |
$records[*]['isRecommend'] | 是否推荐 |
$records[*]['isTop'] | 是否置顶 |
$records[*]['tags'] | 标签数组 |
$records[*]['author'] | 作者 |
$records[*]['source'] | 来源 |
$records[*]['seoTitle'] | SEO 标题 |
$records[*]['seoDescription'] | SEO 描述 |
$records[*]['seoKeywords'] | SEO 关键词 |
$records[*]['_url'] | 内容 URL |
$records[*]['_day'] | 内容发布日期 |
列表 pageCatWithDataByUrl
根据栏目 URL 获取内容列表(包含副表字段),不包含子栏目
<?php $paginateData = \MCms::pageCatWithDataByUrl($catUrl, $page = 1, $pageSize = 10, $option = []); ?>
<?php $records = $paginateData['records']; ?>
<?php $total = $paginateData['total']; ?>
基本属性变量
| 变量 | 说明 |
|---|---|
$total | 总页数 |
内容记录变量
| 变量 | 说明 |
|---|---|
$records | 内容记录数组 |
$records[*]['id'] | 内容 ID |
$records[*]['created_at'] | 创建时间 |
$records[*]['updated_at'] | 更新时间 |
$records[*]['catId'] | 栏目 ID |
$records[*]['modelId'] | 模型 ID |
$records[*]['title'] | 标题 |
$records[*]['summary'] | 摘要 |
$records[*]['cover'] | 封面 |
$records[*]['postTime'] | 发布时间 |
$records[*]['wordCount'] | 字数 |
$records[*]['viewCount'] | 浏览次数 |
$records[*]['commentCount'] | 评论数 |
$records[*]['likeCount'] | 喜欢数 |
$records[*]['isRecommend'] | 是否推荐 |
$records[*]['isTop'] | 是否置顶 |
$records[*]['tags'] | 标签数组 |
$records[*]['author'] | 作者 |
$records[*]['source'] | 来源 |
$records[*]['seoTitle'] | SEO 标题 |
$records[*]['seoDescription'] | SEO 描述 |
$records[*]['seoKeywords'] | SEO 关键词 |
$records[*]['_url'] | 内容 URL |
$records[*]['_day'] | 内容发布日期 |
列表 pageCatsWithData
根据多个栏目 ID 获取内容列表(包含副表字段),不包含子栏目,多个栏目必须为相同的模型
<?php $paginateData = \MCms::pageCatsWithData($catIds, $page = 1, $pageSize = 10, $option = []); ?>
<?php $records = $paginateData['records']; ?>
<?php $total = $paginateData['total']; ?>
基本属性变量
| 变量 | 说明 |
|---|---|
$total | 总页数 |
内容记录变量
| 变量 | 说明 |
|---|---|
$records | 内容记录数组 |
$records[*]['id'] | 内容 ID |
$records[*]['created_at'] | 创建时间 |
$records[*]['updated_at'] | 更新时间 |
$records[*]['catId'] | 栏目 ID |
$records[*]['modelId'] | 模型 ID |
$records[*]['title'] | 标题 |
$records[*]['summary'] | 摘要 |
$records[*]['cover'] | 封面 |
$records[*]['postTime'] | 发布时间 |
$records[*]['wordCount'] | 字数 |
$records[*]['viewCount'] | 浏览次数 |
$records[*]['commentCount'] | 评论数 |
$records[*]['likeCount'] | 喜欢数 |
$records[*]['isRecommend'] | 是否推荐 |
$records[*]['isTop'] | 是否置顶 |
$records[*]['tags'] | 标签数组 |
$records[*]['author'] | 作者 |
$records[*]['source'] | 来源 |
$records[*]['seoTitle'] | SEO 标题 |
$records[*]['seoDescription'] | SEO 描述 |
$records[*]['seoKeywords'] | SEO 关键词 |
$records[*]['_url'] | 内容 URL |
$records[*]['_day'] | 内容发布日期 |
列表 pageCatWithDataByUrl
根据多个栏目 URL 获取列表(包含副表字段),不包含子栏目,多个栏目必须为相同的模型
<?php $paginateData = \MCms::pageCatsWithDataByUrl($catUrls, $page = 1, $pageSize = 10, $option = []); ?>
<?php $records = $paginateData['records']; ?>
<?php $total = $paginateData['total']; ?>
基本属性变量
| 变量 | 说明 |
|---|---|
$total | 总页数 |
内容记录变量
| 变量 | 说明 |
|---|---|
$records | 内容记录数组 |
$records[*]['id'] | 内容 ID |
$records[*]['created_at'] | 创建时间 |
$records[*]['updated_at'] | 更新时间 |
$records[*]['catId'] | 栏目 ID |
$records[*]['modelId'] | 模型 ID |
$records[*]['title'] | 标题 |
$records[*]['summary'] | 摘要 |
$records[*]['cover'] | 封面 |
$records[*]['postTime'] | 发布时间 |
$records[*]['wordCount'] | 字数 |
$records[*]['viewCount'] | 浏览次数 |
$records[*]['commentCount'] | 评论数 |
$records[*]['likeCount'] | 喜欢数 |
$records[*]['isRecommend'] | 是否推荐 |
$records[*]['isTop'] | 是否置顶 |
$records[*]['tags'] | 标签数组 |
$records[*]['author'] | 作者 |
$records[*]['source'] | 来源 |
$records[*]['seoTitle'] | SEO 标题 |
$records[*]['seoDescription'] | SEO 描述 |
$records[*]['seoKeywords'] | SEO 关键词 |
$records[*]['_url'] | 内容 URL |
$records[*]['_day'] | 内容发布日期 |
列表 latestCat
根据栏目 ID 获取最新内容列表(不包含副表字段),包含子目录,
<?php $records = \MCms::latestCat($catId, $limit = 10); ?>
可用变量
| 变量 | 说明 |
|---|---|
$records | 内容记录数组 |
$records[*]['id'] | 内容 ID |
$records[*]['created_at'] | 创建时间 |
$records[*]['updated_at'] | 更新时间 |
$records[*]['catId'] | 栏目 ID |
$records[*]['modelId'] | 模型 ID |
$records[*]['title'] | 标题 |
$records[*]['summary'] | 摘要 |
$records[*]['cover'] | 封面 |
$records[*]['postTime'] | 发布时间 |
$records[*]['wordCount'] | 字数 |
$records[*]['viewCount'] | 浏览次数 |
$records[*]['commentCount'] | 评论数 |
$records[*]['likeCount'] | 喜欢数 |
$records[*]['isRecommend'] | 是否推荐 |
$records[*]['isTop'] | 是否置顶 |
$records[*]['tags'] | 标签数组 |
$records[*]['author'] | 作者 |
$records[*]['source'] | 来源 |
$records[*]['seoTitle'] | SEO 标题 |
$records[*]['seoDescription'] | SEO 描述 |
$records[*]['seoKeywords'] | SEO 关键词 |
$records[*]['_url'] | 内容 URL |
$records[*]['_day'] | 内容发布日期 |
列表条件检索
列表带查询条件时,需要自定义 $option 参数,对所有列表获取方法均适用
// 精确匹配
$option = [
'where' => [
'title' => '阿里巴巴',
'source' => '网络',
],
];
// 复杂匹配
$option = [
'whereOperate'=>[
// 模糊匹配
['title','like','%阿里巴巴%'],
// 范围
['postTime','>=','2021-01-01 00:00:00'],
]
];
// 自定义排序
$option = [
'order'=>[
['id','desc']
]
];
// 列表默认按照以下排序
$option = [
'order'=>[
['isTop', 'desc'],
['isRecommend', 'desc'],
['postTime', 'desc'],
]
];
栏目上一条内容 prevOne
获取上一条记录
<?php $record = \MCms::prevOne($catId, $recordId); ?>
可用变量
| 变量 | 说明 |
|---|---|
$record['id'] | 内容 ID |
$record['created_at'] | 创建时间 |
$record['updated_at'] | 更新时间 |
$record['catId'] | 栏目 ID |
$record['modelId'] | 模型 ID |
$record['title'] | 标题 |
$record['summary'] | 摘要 |
$record['cover'] | 封面 |
$record['postTime'] | 发布时间 |
$record['wordCount'] | 字数 |
$record['viewCount'] | 浏览次数 |
$record['commentCount'] | 评论数 |
$record['likeCount'] | 喜欢数 |
$record['isRecommend'] | 是否推荐 |
$record['isTop'] | 是否置顶 |
$record['tags'] | 标签数组 |
$record['author'] | 作者 |
$record['source'] | 来源 |
$record['seoTitle'] | SEO 标题 |
$record['seoDescription'] | SEO 描述 |
$record['seoKeywords'] | SEO 关键词 |
$record['_data']['content'] | 内容 |
$record['_data']['xxx'] | 其他字段 |
栏目下一条内容 nextOne
获取下一条记录
<?php $record = \MCms::nextOne($catId, $recordId); ?>
可用变量
| 变量 | 说明 |
|---|---|
$record['id'] | 内容 ID |
$record['created_at'] | 创建时间 |
$record['updated_at'] | 更新时间 |
$record['catId'] | 栏目 ID |
$record['modelId'] | 模型 ID |
$record['title'] | 标题 |
$record['summary'] | 摘要 |
$record['cover'] | 封面 |
$record['postTime'] | 发布时间 |
$record['wordCount'] | 字数 |
$record['viewCount'] | 浏览次数 |
$record['commentCount'] | 评论数 |
$record['likeCount'] | 喜欢数 |
$record['isRecommend'] | 是否推荐 |
$record['isTop'] | 是否置顶 |
$record['tags'] | 标签数组 |
$record['author'] | 作者 |
$record['source'] | 来源 |
$record['seoTitle'] | SEO 标题 |
$record['seoDescription'] | SEO 描述 |
$record['seoKeywords'] | SEO 关键词 |
$record['_data']['content'] | 内容 |
$record['_data']['xxx'] | 其他字段 |
边栏推荐
- Tens of millions of Android infected with malicious virus and Microsoft disabled a function of Excel | global network security hotspot on October 9
- How to solve the problem of easycvr playing the total recording time in the specified time period?
- Windowsvpn client is coveted by vulnerabilities, 53% of companies face supply chain attacks | global network security hotspot
- How does cloud computing achieve elastic scaling? What are the characteristics of elasticity?
- What are the functions of Fortress machine equipment
- News | detailed explanation of network security vulnerabilities of branch enterprises
- Which brand is a good backup all-in-one machine price
- What is the difference between server leasing and hosting?
- Summary of rust high concurrency programming
- halcon知识:区域(Region)上的轮廓算子(2)
猜你喜欢

618大促:手机品牌“神仙打架”,高端市场“谁主沉浮”?
Thank you for your recognition! One thank-you note after another

Ar 3D map technology

老弹出explorer.exe遇到问题已停止工作,怎么办?

On Sunday, I rolled up the uni app "uview excellent UI framework"

Sorting out of key vulnerabilities identified by CMS in the peripheral management of red team (I)

Community pycharm installation visual database

元气森林推“有矿”,农夫山泉们跟着“卷”?

内存泄漏之KOOM

QT creator tips
随机推荐
Tencent cloud launched its new 100g+ cloud server product!! Expect more than 400g+ in the future!
Use Charles to capture the package of the applet through the mobile agent
【代码随想录-动态规划】T392.判断子序列
Differences between EDI and VMI
Ar 3D map technology
Typera cooperates with picgo to upload pictures to its own server with one click and obtain external links at the same time
What does elastic public IP mean? The advantages of elastic public IP
Grpc: how to reasonably manage log configuration?
Cloud development RMB 1 purchase activity is in progress
How do I check the trademark registration number? Where do I need to check?
System library golang Org/x/time/rate frequency limiter bug
What aspects does the intelligent identification system include? Is the technology of intelligent identification system mature now?
内存泄漏之KOOM
How is intelligent character recognition realized? Is the rate of intelligent character recognition high?
What technology does cloud computing elasticity scale? What are the advantages of elastic scaling in cloud computing?
How to query trademark registration? Where should I check?
Grpc: how to implement distributed log tracing?
Does the user need a code signing certificate? What is the use of a code signing certificate
LeetCode 1047. Delete all adjacent duplicates in the string
618大促:手机品牌“神仙打架”,高端市场“谁主沉浮”?