|theme 过滤器返回一个相对于网站活动主题路径的地址。结果是一个绝对 URL,包括域名和协议,指向过滤器参数中指定的资产。主题资产通常位于主题目录的 assets 子目录中。
<script type="text/javascript" src="{{ 'assets/js/menu.js'|theme }}"></script>如果网站地址是 https://octobercms.com 并且当前活动主题名为 website 上述示例将输出以下内容:
<script type="text/javascript" src="http://october.com/themes/website/assets/js/menu.js"></script>过滤器还可以用于通过传递一个文件数组来组合同类型的资产。
<link href="{{ [
'assets/css/styles1.css',
'assets/css/styles2.css'
]|theme }}" rel="stylesheet">注意: 您可以通过
enableAssetMinify参数在config/cms.php脚本中启用资源文件压缩。默认情况下,压缩功能是禁用的。
资产合并器支持用于替代文件路径的常用别名,这些别名以 @ 符号开头。例如,AJAX 框架资产可以包含在合并器中。
<script src="{{ [
'@framework.extras',
'assets/javascript/app.js'
]|theme }}"></script>以下别名受支持:
| Alias | Description |
|---|---|
@framework | AJAX framework extras, subsitute for {% framework %} tag (JavaScript) |
@framework.extras | AJAX framework extras, subsitute for {% framework extras %} tag (JavaScript, CSS) |
@framework.turbo | AJAX framework turbo, subsitute for {% framework turbo %} tag (JavaScript) |
@framework.bundle | AJAX framework bundle, subsitute for {% framework extras turbo %} tag (JavaScript, CSS) |
:: tip
The same alias can be used for JavaScript or CSS, for example @framework.extras. At least one other reference with a CSS or JS file extension is needed in the array to determine which to use.
:::
在某些情况下,您可能希望组合主题外部的文件,这可以通过为路径添加符号前缀来创建动态路径实现。例如,以 ~/ 开头的路径将创建一个相对于应用程序的路径:
<script src="{{ ['~/modules/system/assets/js/framework.js']|theme }}"></script>这些符号受支持用于创建动态路径:
| Symbol | Description |
|---|---|
~ | Relative to the application directory |
| `# | theme |
该 |theme 过滤器返回一个相对于网站活动主题路径的地址。结果是一个绝对 URL,包括域名和协议,指向过滤器参数中指定的资产。主题资产通常位于主题目录的 assets 子目录中。
代码块0
如果网站地址是 https://octobercms.com 并且活动主题名为 website 则以上示例将输出以下内容:
代码块_1
过滤器也可以通过传递文件数组来组合相同类型的资产。
代码块_2
注意: 您可以通过
enableAssetMinify参数在config/cms.php脚本中启用资源文件压缩。默认情况下,压缩是禁用的。
资产合并器支持替代文件路径的常见别名,这些别名将以 @ 符号开头。 例如 AJAX 框架资产可以包含在合并器中。
代码块3
支持以下别名:
| Alias | Description |
|---|---|
@framework | AJAX framework extras, subsitute for \{% framework %} tag (JavaScript) |
@framework.extras | AJAX framework extras, subsitute for \{% framework extras %} tag (JavaScript, CSS) |
@framework.turbo | AJAX framework turbo, subsitute for \{% framework turbo %} tag (JavaScript) |
@framework.bundle | AJAX framework bundle, subsitute for \{% framework extras turbo %} tag (JavaScript, CSS) |
:: tip
相同的别名可用于 JavaScript 或 CSS,例如 @framework.extras。数组中至少需要一个其他带有 CSS 或 JS 文件扩展名的引用,来确定使用哪一个。
:::
在某些情况下,您可能希望合并主题之外的文件,这可以通过在路径前添加一个符号来创建动态路径来实现。例如,以 ~/ 开头的路径将创建相对于应用程序的路径:
代码块 4
这些符号受支持用于创建动态路径:
| Symbol | Description |
|---|---|
~ | Relative to the application directory |
| Relative to the plugins directory | |
# | Relative to the themes directory |