帝国cms模板中的$navinfor变量包含了哪些数据_帝国cms $navinfor变量解析

在帝国CMS模板中,$navinfor 是一个非常实用的全局变量,通常用于内容页、反馈表单页或其他需要调用当前信息数据的页面。它是一个数组,存储了当前所访问信息的所有字段数据,方便开发者直接调用。

什么是 $navinfor 变量?

$navinfor 是帝国CMS在内容模板或自定义PHP代码中自动赋值的一个数组变量,仅在内容页(如新闻内容页)中可用。它包含了当前文章(记录)的完整数据,相当于通过SQL查询获取的一条完整记录。

$navinfor 包含的主要字段数据

以默认的数据表(如 news 表)为例,$navinfor 数组中常见的字段包括:

id:信息ID,唯一标识符classid:所属栏目IDtitle:标题newstime:发布时间(时间戳格式)keyboard:关键词groupid:下载/附件组ID(适用于附件类系统模型)userid:发布者用户IDusername:发布者用户名ftitle:副标题smalltext:简介/摘要titlepic:标题图片地址ispic:是否为推荐图片(1=是,0=否)onclick:点击次数plnum:评论数量totaldown:下载次数firsttitle:一级推荐(1=是)isgood:是否为精华(1=是)filename:文件名(若启用静态命名规则)titleurl:文章完整URL路径stb:使用的副表编号infotags:关联的标签(以逗号分隔)newstext:正文内容(存于副表)

注意:newstext 等大字段通常存储在副表(如 news_data_1)中,但通过 $navinfor 仍可直接调用,前提是模板支持数据读取。

如何使用 $navinfor 变量?

在内容模板中(.php 文件或支持PHP的模板),可以直接使用该变量输出字段。例如:

<?phpecho $navinfor[‘title’]; // 输出标题echo $navinfor[‘smalltext’]; // 输出简介echo $navinfor[‘titlepic’] ? ‘<img src="’.$navinfor[‘titlepic’].’">’ : ”;?>

也可以结合帝国函数生成链接:

<?=sys_ReturnBqTitleLink($navinfor)?> // 输出带链接的标题

在灵动标签中也可使用:

[e:loop={0,10,0,”,”}]<?=date(‘Y-m-d’,$bqr[newstime])?> – <?=esub($bqr[title],30)?>[/e:loop]

虽然灵动标签一般用 $bqr,但在某些自定义PHP逻辑中,$navinfor 仍可用于当前内容上下文。

注意事项

$navinfor 仅在内容页有效,列表页、首页等无法直接使用确保开启了“使用程序代码”功能,才能在模板中写PHP代码调用副表字段时,需确认数据已加载(通常系统自动处理)安全起见,输出内容建议过滤,如使用 htmlspecialchars() 防止XSS

基本上就这些。掌握 $navinfor 的结构和用法,能极大提升帝国CMS模板开发效率,尤其适合做个性化内容展示或复杂逻辑判断。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。