cakephp 2.x如何包含来自外部模板CSS的文件

时间:2018-10-23 09:05:01

标签: html css templates cakephp

我有这个外部HTML模板(是从themeforest获得的):

html template

目录结构如下:

base/
- css/
- fonts/
- images/
- img/
- js/
- index.html

模板 Index.html 像这样使用css

<link rel="stylesheet" href="css/bootstrap.min.css">
<link rel="stylesheet" href="css/main.css" id="color-switcher-link">
<link rel="stylesheet" href="css/animations.css">
<link rel="stylesheet" href="css/fonts.css">
<script src="js/vendor/modernizr-2.6.2.min.js"></script>

我不知道如何正确复制文件;它们应该从css到服务器Web根目录吗?还是进入cakephp/app/cakephp/app/webroot/css/

在蛋糕中,我有Views/Layouts/View/Layouts/Pages/home.ctp。我从模板创建了mainpage.ctp的{​​{1}},并尝试将其与index.html结合使用,但是看起来很烂:

crappy

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

您有两个选择

第一个选项

将主题base文件夹复制到webroot,然后转到src/template/layout/default.ctp并像下面的示例一样包含它们

假设您的html模板中有css调用,例如

<link href="./base/css/bootstrap.css" rel="stylesheet" />

替换

<?= $this->Html->css('../base/css/base') ?>

与js相同

<?= $this->Html->script('../base/js/plugin'); ?>

注意:您不需要放置文件扩展名.css.js

选项2

将每个CSS文件复制到webroot / css

将每个JS文件复制到webroot / js

直接调用文件

用于调用base.css

<?= $this->Html->css('base') ?>

用于调用plugin.js

<?= $this->Html->script('plugin'); ?>

cakephp 3 中,您可以从config/app.php

更改每个文件夹的路径

' imageBaseUrl' => 'img/', 'cssBaseUrl' => 'css/', 'jsBaseUrl' => 'js/'