Content Blocks
Content Blocks 这里我们称为内容块。内容块是可以编辑的文本、HTML代码或者Markdown块。主要用来保存静态内容,并支持基本的模板变量。与Partial(部件)相比,部件则更加灵活,一般用于生成动态内容。
介绍
内容块存储在主题目录的content子目录中。
支持以下扩展名的文件:
Extension Description
htm 使用HTML标记语言
txt 使用纯文本语言
md 使用Markdown语法
这些扩展名决定了在后端系统界面中的编辑及显示方式。也决定了在网站前端的显示方式。Markdown块在显示之前会转换为HTML格式再显示。
渲染内容块
使用{% content 'file.htm' %}
标签在Page、Partial 或 Layout 中渲染内容块。
渲染Content Blocks的页面示例:
url = "/contacts" == <div class="contacts"> {% content 'contacts.htm' %} </div>
将变量传递给内容块
内容块不支持Twig标记,但是支持基本的变量,可以通过变量传递值给内容块。
{% content 'welcome.htm' name='John' %}
在Content Blocks中,可以使用单个大括号 { }
访问变量:
<h1>This is a demo for {name}</h1>
全局变量
可以使用该View::share
方法注册一个全局变量,可用于所有Content Blocks。
View::share('site_name', 'OctoberCMS');
这段代码可以在 插件注册文件 的注册或启动方法中调用。使用上面的例子,变量{site_name}
将在所有Content Blocks中可用。