Rogério Lino

Web development and tips

CakePHP: Layout Inheritance

Para quem está utilizando o CakePHP ou já utilizou e também sentiu falta de herança nos layouts. Segue abaixo uma dica para ajudar na criações de templates utilizando o CakePHP.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
    // sublayout.ctp
    ob_start();
?>
<!-- html content -->
<?php eco $content_for_layout; ?>
<!-- html content -->
<?php

    $content = ob_get_contents();
    ob_end_clean();

    echo $this->renderLayout(
        $content,
        'default' // parent layout
    );
1
2
3
4
5
6
7
8
9
<?php
// controller class
class MyController extends AppController {

    function test() {
        $this->layout = 'sublayout';
    }

}

Comments