aelvan / inlin
此包已被废弃,不再维护。没有建议的替代包。
一个简单的插件,用于在模板中内联内容。
2.1.1
2018-10-06 21:37 UTC
Requires
- craftcms/cms: ^3.0.0
This package is auto-updated.
Last update: 2022-04-27 22:28:12 UTC
README
一个用于在Craft模板中内联文件的微型插件。
这是Inlin的Craft 3.x版本,关于Craft 2.x版本请查看master分支。
要求
此插件需要Craft CMS 3.0.0或更高版本。
安装
要安装插件,请按照以下说明操作。
-
打开终端并转到您的Craft项目
cd /path/to/project
-
然后告诉Composer加载插件
composer require aelvan/inlin
-
在控制面板中,转到设置→插件,然后点击Inlin的“安装”按钮。
用法
使用方法如下
{{ craft.inlin.er('/build/svg/my.svg') | raw }}
<script>{{ craft.inlin.er('/build/js/my.js') | raw }}</script>
<style type="text/css">{{ craft.inlin.er('/build/css/my.css') | raw }}</style>
为什么?有时从性能或工作流程的角度来看,将资源内联而不是请求它们是有意义的。有时候,这样做是有意义的,在性能或工作流程方面。
要包含远程文件,请将true作为第二个参数传递
{{ craft.inlin.er('http://example.com/remote/path.svg', true) | raw }}
警告
请理解,在模板中插入文件数据,尤其是在通过Twig的raw过滤器传递时,是一个潜在的安全风险。路径是相对于您的文档根目录的,因此路径可能指向服务器上的任何文件。请确保您永远不要让第三方控制插入的内容。如果您在思考“嗯”,请将以下内容插入到模板中
{{ craft.inlin.er('/../config/db.php') | raw }}
"大炮巨炮,责任重大" -伏尔泰
配置
Inlin需要知道公共文档根目录以确定您的文件位置。默认情况下,Inlin将使用@webroot
,但在某些服务器配置中,这不是正确的路径。您可以通过在配置文件夹中创建一个名为inline.php
的配置文件,并添加publicRoot
设置来配置路径。
示例
'publicRoot' => '/path/to/website/public/',