如何为UserFrosting登录系统安装资产管理器?

时间:2016-08-23 06:00:26

标签: php twig userfrosting

我为我的登录系统使用userFrosting,我有问题要包含css个文件。 我用过这段代码

{% block stylesheets %}
{{ parent() }}

<link href="{{ asset('css/style.css') }}" rel="stylesheet">
{% endblock %}

或者这个;

{% block stylesheets %}
{{ parent() }}

{{ asset('css/style.css') }}
{% endblock %}

或者这个;

{% block stylesheets %}
{{ parent() }}

<link href="css/style.css" rel="stylesheet">
{% endblock %}

但我无法包含css并且页面显示Error500 localhost页面无效。我怎么能弄清楚这个问题是什么? 我如何安装资产管理器,用户管理中的控制台在哪里安装资产管理器?

1 个答案:

答案 0 :(得分:0)

您需要在initialize.php中添加CSS文件的相对路径。 UserFrosting 0.3.1有一个基本的资产管理系统,可让您根据资产显示的页面类型对资产进行分组。

例如,假设您要加载一些CSS和Javascript库,以便在所有“分析”页面上呈现图表。要将页面分配给“分析”组,您可以将{% set page_group = "analytics" %}添加到页面顶部的Twig模板中。

然后,您可以在initialize.php中为“分析”组注册CSS和JS资产:

$app->hook('includes.css.register', function () use ($app){

    ...

    $app->schema->registerCSS("analytics", "supercharts/supercharts.css");
    $app->schema->registerCSS("analytics", "supercharts-custom.css");
});

$app->hook('includes.js.register', function () use ($app){

    ...

    $app->schema->registerJS("analytics", "supercharts/supercharts.js");
});

值得注意的一些事情:

  • 所有CSS资产必须放在public/css中,所有JS资产放在public/js中。
  • common组中的资源将加载每个页面。
  • 您可以在站点设置中使用构建工具来缩小和连接每个页面组中的资产。这将有助于您的网站加载更快,并带来更好的用户体验。您可以在Google Developers了解有关优化客户端资源的详情。

请注意,所有这些都将在UF4中发生变化,我们将使用new asset management library以及Node.js和Gulp来执行资产编译/优化。