Hi All,
I have problems when I register some js and css files, I’m very new on this task.
I have a main layout, with this as header and footer where the files used for the all application:
<head>
<!-- CSS Global Compulsory-->
<link rel="stylesheet" href="<?php echo Yii::app()->theme->baseUrl; ?>/assets/plugins/bootstrap/css/bootstrap.css">
<link rel="stylesheet" href="<?php echo Yii::app()->theme->baseUrl; ?>/assets/css/style.css">
<link rel="stylesheet" href="<?php echo Yii::app()->theme->baseUrl; ?>/assets/css/headers/header1.css">
<link rel="stylesheet" href="<?php echo Yii::app()->theme->baseUrl; ?>/assets/css/responsive.css">
<link rel="shortcut icon" href="favicon.ico">
<!-- CSS Implementing Plugins -->
<link rel="stylesheet" href="<?php echo Yii::app()->theme->baseUrl; ?>/assets/plugins/font-awesome/css/font-awesome.css">
<!-- CSS Theme -->
<link rel="stylesheet" href="<?php echo Yii::app()->theme->baseUrl; ?>/assets/css/themes/default.css" id="style_color">
<link rel="stylesheet" href="<?php echo Yii::app()->theme->baseUrl; ?>/assets/css/themes/headers/default.css" id="style_color-header-1">
</head>
<body>
...
...
<!-- JS Global Compulsory -->
<script type="text/javascript" src="<?php echo Yii::app()->theme->baseUrl; ?>/assets/plugins/jquery-1.10.2.min.js"></script>
<script type="text/javascript" src="<?php echo Yii::app()->theme->baseUrl; ?>/assets/plugins/jquery-migrate-1.2.1.min.js"></script>
<script type="text/javascript" src="<?php echo Yii::app()->theme->baseUrl; ?>/assets/plugins/bootstrap/js/bootstrap.min.js"></script>
<script type="text/javascript" src="<?php echo Yii::app()->theme->baseUrl; ?>/assets/plugins/hover-dropdown.min.js"></script>
<script type="text/javascript" src="<?php echo Yii::app()->theme->baseUrl; ?>/assets/plugins/back-to-top.js"></script>
<!-- JS Page Level -->
<script type="text/javascript" src="<?php echo Yii::app()->theme->baseUrl; ?>/assets/js/app.js"></script>
<script type="text/javascript">
jQuery(document).ready(function() {
App.init();
//App.initSliders();
//Index.initParallaxSlider();
});
</script>
<!--[if lt IE 9]>
<script src="<?php echo Yii::app()->theme->baseUrl; ?>/assets/plugins/respond.js"></script>
<![endif]-->
</body>
My home view needs some js and css files that needs to be located in a right place, the html code should look like this:
<head>
<!-- CSS Global Compulsory-->
<link rel="stylesheet" href="assets/plugins/bootstrap/css/bootstrap.css">
<link rel="stylesheet" href="assets/css/style.css">
<link rel="stylesheet" href="assets/css/headers/header1.css">
<link rel="stylesheet" href="assets/css/responsive.css">
<link rel="shortcut icon" href="favicon.ico">
<!-- CSS Implementing Plugins -->
<link rel="stylesheet" href="assets/plugins/font-awesome/css/font-awesome.css">
<link rel="stylesheet" href="assets/plugins/flexslider/flexslider.css"> //These are specific for the view
<link rel="stylesheet" href="assets/plugins/bxslider/jquery.bxslider.css"> //These are specific for the view
<link rel="stylesheet" href="assets/plugins/layer_slider/css/layerslider.css" type="text/css">//These are specific for the view
<!-- CSS Theme -->
<link rel="stylesheet" href="assets/css/themes/default.css" id="style_color">
<link rel="stylesheet" href="assets/css/themes/headers/default.css" id="style_color-header-1">
</head>
<body>
...
...
<!-- JS Global Compulsory -->
<script type="text/javascript" src="assets/plugins/jquery-1.10.2.min.js"></script>
<script type="text/javascript" src="assets/plugins/jquery-migrate-1.2.1.min.js"></script>
<script type="text/javascript" src="assets/plugins/bootstrap/js/bootstrap.min.js"></script>
<script type="text/javascript" src="assets/plugins/hover-dropdown.min.js"></script>
<script type="text/javascript" src="assets/plugins/back-to-top.js"></script>
//(start) Specific for the view
<!-- JS Implementing Plugins -->
<script type="text/javascript" src="assets/plugins/flexslider/jquery.flexslider-min.js"></script>
<script type="text/javascript" src="assets/plugins/bxslider/jquery.bxslider.js"></script>
<!-- Layer Slider -->
<script src="assets/plugins/layer_slider/jQuery/jquery-easing-1.3.js" type="text/javascript"></script>
<script src="assets/plugins/layer_slider/jQuery/jquery-transit-modified.js" type="text/javascript"></script>
<script src="assets/plugins/layer_slider/js/layerslider.transitions.js" type="text/javascript"></script>
<script src="assets/plugins/layer_slider/js/layerslider.kreaturamedia.jquery.js" type="text/javascript"></script>
<!-- End Layer Slider -->
//(end) Specific for the view
<!-- JS Page Level -->
<script type="text/javascript" src="assets/js/app.js"></script>
<script type="text/javascript" src="assets/js/pages/index.js"></script> //These are specific for the view
<script type="text/javascript">
jQuery(document).ready(function() {
App.init();
App.initSliders(); //These are specific for the view
App.initBxSlider(); //These are specific for the view
Index.initLayerSlider();//These are specific for the view
});
</script>
<!--[if lt IE 9]>
<script src="assets/plugins/respond.js"></script>
<script src="assets/plugins/layer_slider/assets/js/html5.js"></script>
<![endif]-->
</body>
I have tried to register the scripts in the controller before render the view, using different options POS_HEAD, POS_BEGIN, etc:
Yii::app()->clientScript->registerCssFile(Yii::app()->theme->baseUrl.'name');
Yii::app()->clientScript->registerScriptFile(Yii::app()->theme->baseUrl.'name', CClientScript::POS_BEGIN);
So my big question is… How can I place the scripts where I want? is there any alternative but working way to do it?
Im kind of new on this, so an explanation of how register files works is also more than welcome ![]()
Thanks to everyone in advance!