内容块是文本,HTML或Markdown块,可以与页面或布局分开进行编辑。它们被设计为仅容纳静态内容并支持基本模板变量。局部变量更灵活,应用于生成动态内容。
介绍
内容阻止文件位于主题目录的/ content子目录中。内容文件支持以下扩展名:
| 延期 | 描述 |
|---|---|
| htm | 用于HTML标记。 |
| 文本文件 | 用于纯文本。 |
| md | 用于Markdown语法。 |
该扩展名影响内容块在后端用户界面(使用WYSIWYG编辑器或纯文本编辑器)中的显示方式以及这些块在网站上的呈现方式。Markdown块在显示之前已转换为HTML。
渲染内容块
使用{% content 'file.htm' %}标签在页面,部分或布局中渲染内容块。呈现内容块的页面示例:
url = "/contacts"
==
<div class="contacts">
{% content 'contacts.htm' %}
</div>
将变量传递到内容块
有时您可能需要将变量从外部代码传递到内容块。尽管内容块不支持使用Twig标记,但它们确实支持使用具有基本语法的变量。您可以通过在变量中的内容块名称之后指定变量来将变量传递给内容块{% content %}:
{% content 'welcome.htm' name='John' %}
在内容块内,可以使用单个大括号访问变量:
<h1>This is a demo for {name}</h1>
可以在《标记指南》中找到更多信息。
全局变量
您可以使用该View::share方法注册所有内容块全局可用的变量。
View::share('site_name', 'OctoberCMS');
可以在插件注册文件的register或boot方法内部调用此代码。使用上面的示例,该变量{site_name}将在所有内容块内可用。