企业🤖AI Agent构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
[TOC] 内容块是文本,HTML或[Markdown](#3)块,可以与页面或布局分开编辑。它们仅用于保存静态内容并支持基本的模板变量。[部件](#3)更加灵活,并应被用于生成动态内容。 ## **介绍** 内容块文件驻留在主题目录的**/ content**子目录中。内容文件支持以下扩展: | 扩展 | 描述 | | --- | --- | | **HTM** | 用于HTML标记。 | | **txt** | 用于纯文本。 | | **MD** | 用于Markdown语法。 | 扩展会影响内容块在后端用户界面(使用WYSIWYG编辑器或纯文本编辑器)中的显示方式以及块在网站上的呈现方式。Markdown块在显示之前会转换为HTML。 ## **渲染内容块** 使用`{% content 'file.htm' %}`标记在[页面](#3),[部分](#3)或[布局中](#3)呈现内容块。呈现内容块的页面示例: ~~~ url = "/contacts" == <div class="contacts"> {% content 'contacts.htm' %} </div> ~~~ ## **将变量传递给内容块** 有时您可能需要将变量从外部代码传递到内容块。虽然内容块不支持使用Twig标记,但它们确实支持使用具有基本语法的变量。您可以通过在`{% content %}`标记中的内容块名称之后指定变量来将变量传递给内容块: ~~~ {% content 'welcome.htm' name='John' %} ~~~ 在内容块中,可以使用单个*大括号*访问变量: ~~~ <h1>This is a demo for {name}</h1> ~~~ 可以[在标记指南中](#3)找到更多信息。 ### **全局变量** 您可以使用该`View::share`方法注册全局可用于所有内容块的变量。 ~~~ View::share('site_name', 'OctoberCMS'); ~~~ 可以在[插件注册文件](#3)的寄存器或引导方法内调用此代码。使用上面的示例,变量`{site_name}`将在所有内容块中可用。