[TOC=2,3]

门户首页

模板文件对应的是模板目录/portal/index.html,这个页面没有被控制器 assign任何变量,模板开发者完全可以用 portal:articles等其它模板标签制作此页面

文章列表

默认模板文件(可以增加更多)

默认模板文件对应的是模板目录/portal/list.html

控制器 assign 过的变量

$category这个变量是就是一个文章分类对象,可以当成数组直接用

  1. {$category.name} 分类名
  2. {$category.id} 分类 id
  3. ... 更多变量请查看数据库 portal_category

文章内页

默认模板文件(可以增加更多)

模板文件对应的是模板目录/portal/article.html

控制器 assign 过的变量

$article这个变量是就是一个文章对象,可以当成数组直接用

  1. {$article.post_title} 文章标题
  2. {$article.id} 文章 id
  3. ... 更多变量请查看数据库portal_post
  4. <!--调用文章的扩展属性-->
  5. {$article.more.thumbnail|default=''}
  6. <empty name="article.more.thumbnail">
  7. 没有设置文章缩略图
  8. <else/>
  9. <img src=" {:cmf_get_image_url($article.more.thumbnail)}"/>
  10. </empty>

$category这个变量是就是一个文章分类对象,可以当成数组直接用,但这个变量在 文章链接的 cid参数没有时是不会存在的,所以在用这个变量之前要先判断他时否存在

  1. {$category.name} 分类名
  2. {$category.id} 分类 id
  3. ... 更多变量请查看数据库

页面

默认模板文件(可以增加更多)

模板文件对应的是模板目录/portal/page.html

控制器 assign 过的变量

$page这个变量是就是一个文章对象,可以当成数组直接用

  1. {$page.post_title} 页面标题
  2. {$page.id} 页面 id
  3. ... 更多变量请查看数据库portal_post
  4. <!--调用页面的扩展属性-->
  5. {$page.more.thumbnail|default=''}
  6. <empty name="page.more.thumbnail">
  7. 没有设置页面缩略图
  8. <else/>
  9. <img src=" {:cmf_get_image_url($page.more.thumbnail)}"/>
  10. </empty>

搜索页

模板文件

模板文件对应的是模板目录/portal/search.html

控制器 assign 过的变量

$keyword这个变量是搜索关键字,模板开发可以利用这个关键字做为取文章列表条件结合portal:articles标签获取文章列表

原文: https://www.thinkcmf.com/docs/cmf/模板开发.html