Intended use :
Create static blocks such as : header, footer, menu, sidebar blocks (other post, contact, ...)Simple header widget example:
Directory structure :-Protected
---widgets
-----header
-------header.php
-------views
---------headerView.php
...
header.php
<?php
class header extends CWidget { //class must be same with file name and extended CWidget class
public function init() {
// do something
}
public function run() {
//do something ...
$model = Model::model()->findAll();
$this->render('headerView',array('model'=>$model ));
}
}
?>
headerView.php
<div id="topHeader">
<!-- header content -->
<?php var_dump($model); ?>
</div>
Using in layout :
<!DOCTYPE html> | |
<html dir="ltr" lang="en"> |
</head>
<body>
<?php $this->widget('application.widgets.header.header'); ?>
<?php echo $content; ?>
</body>
</html>
How to solve :
1. Check alias path : "'application.widgets.header.header'" make it correct
2. Check class name in file header.php : make sure that it is same with file name.
3. Check other logic
<?php $this->widget('application.widgets.header.header'); ?>
<?php echo $content; ?>
</body>
</html>
Common errors:
"include(header.php): failed to open stream: No such file or directory"How to solve :
1. Check alias path : "'application.widgets.header.header'" make it correct
2. Check class name in file header.php : make sure that it is same with file name.
3. Check other logic
0 nhận xét:
Post a Comment