[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}`將在所有內容塊中可用。
- 安裝程序
- 安裝
- 配置
- CMS
- 主題
- 頁面
- 部件
- 布局
- 內容
- 組件
- 媒體
- 標記指南
- AJAX
- 介紹
- 事件處理
- 更新部件
- 數據屬性API
- JavaScript API
- 額外特征
- 主題
- 開發主題
- 插件
- 注冊
- 版本
- 使用Composer
- 構建組件
- 設置和配置
- 本地化
- 任務調度
- 擴展插件
- 后臺
- 控制器和AJAX
- 視圖和部件
- 小工具
- 表單
- 列表
- 關聯
- 重新排序
- 導入導出
- 用戶和權限
- 用戶界面指南
- 數據庫
- 基本用法
- 結構
- 查詢構造器
- 模型
- 關聯
- 附件
- 集合
- 訪問器和修改器
- 序列化
- 特性
- 行為
- 服務
- 應用
- 行為
- 緩存
- 集合
- 錯誤&日志
- 事件
- 表單&HTML
- 文件系統/CDN
- 哈希&加密
- 助手函數
- 郵件
- 分頁
- 分析器
- 隊列
- 請求&輸入
- 響應&視圖
- 路由
- Session
- 驗證
- 控制臺
- 命令
- 腳手架
- 開發
- API文檔
- 附錄
- 單元測試
- 質量指南
- 開發指南