我使用laravel 5和刀片模板引擎。我想创建模块以插入静态页面作为.zip存档,其中包含html,css,js和图像文件到我的CMS中。当用户需要与另一家公司创建页面并且没有laravel技能或者不需要了解我们的项目结构时,这应该会有所帮助。
我目前的流程如下:
情景:
public/static_pages/__slug__/
并通过添加正确的链接替换资源(css,js,images)的 index.html 链接。此页面的链接类似于/page/{category_slug}/{slug}
例:
这有效,但有时我想使用布局,例如某些页面使用菜单和页脚,但其他页面没有。那我该怎么办?
我有一些想法:
<!-- section content -->
,<!-- section menu -->
和
将其转换为刀片模板。<!-- insert menu -->
,<!-- insert content -->
等评论的html文件。我们应该在数据库或文件中准备一些“部分”,并用准备好的部分替换注释。 问题:
在所有情况下,我都不知道在正确的位置添加css / js文件(在html中)。
如果是布局 - 如果我们使用布局,那么我们应该有预定义的jquery。所以在静态页面中我们无法复制它,但在开发过程中我们需要它。
如果没有布局 - 每次在存档中添加jquery和global css,所以我们在服务器上复制它并且无法缓存它。
我应该做什么?
答案 0 :(得分:0)
如果您不想使用Less / Sass或任务运行器(例如gulp),您可以手动将资源文件添加到公共文件夹:
public
|_css
|_js
在您的观点中只需将其链接到它们,如下所示:
{{ HTML::style('css/style.css') }}
或者
<link media="all" type="text/css" rel="stylesheet" href="css/style.css">
脚本相同。您可以从这里获得更多信息:
http://laravel.com/docs/5.1/blade
http://laravel.com/docs/5.0/templates
我尝试使用名为
的视图中的文件夹来组织我的主题文件&#34;布局&#34;
然后制作以下文件:
master.blade.php,header.blade.php,footer.blade.php
在header.blade.php中设置html标题代码,对于foooter,你可以像这样设置你的主人:
<!DOCTYPE html>
<html>
<head>
<title>@yield('title')</title>
@include('layout.header')
</head>
<body>
@yield('content')
</body>
<footer>
@include('layout.footer')
</footer>
</html>
然后在您的任何视图中,刀片文件只写:
@extends('layout.master')
@section('title','title of your page')
@section('content')
your body content
@stop