Elements
Muitas aplicações têm pequenos blocos de código de apresentação que precisa ser repetido em vários lugares diferentes, para evitar redundância de código, devemos colocar estes blocos de códigos em um element.
Seguindo os mesmos padões das view, porem os arquivos devem ser salvo em App/View/_Elements/
com o nome do element acresentando .html.php, por exemplo, vamos criar um element para um menu, o nome do arquivo deve ser menu.html.php.
Os elements estão disponíveis nas views, layout e até mesmo em outros elements.
Para pegar o conteúdo de um element, devemos utilizar o método View::element().
Muitas vezes precisamos passar valores para os elements, com estes parâmetros é possível.
Veja exemplo:
Em determinados casos precisamos separar os element em pastas, para que isso venha funcionar perfeitamente, você deve informar juntamente ao nome do element o nome da pasta onde está esse element. Por exemplo, tenho alguns elements para o site e outros para a área administrativa deste site, então podemos criar duas pastas com nomes diferenciados, porem estás pastas devem estar dentro da pasta parão dos elements, que é a App/View/_Elements/, digamos que estas pastas se chamam Site e Admin.
Veja exemplo:
Criando um element
Seguindo os mesmos padões das view, porem os arquivos devem ser salvo em App/View/_Elements/
com o nome do element acresentando .html.php, por exemplo, vamos criar um element para um menu, o nome do arquivo deve ser menu.html.php.
Buscando conteúdo do element
Os elements estão disponíveis nas views, layout e até mesmo em outros elements.
Para pegar o conteúdo de um element, devemos utilizar o método View::element().
View::element()
Pega o conteúdo de um element.
Parâmetros:
Retorno:
Veja exemplo:
Parâmetros:
string $element
array $params [opcional]
Nome do element a ser buscado o conteúdo.
array $params [opcional]
Parâmetros para o element.
Retorno:
mixed
Conteúdo do element.
Veja exemplo:
echo $this->element('menu');
Passando parâmetros para elements
Muitas vezes precisamos passar valores para os elements, com estes parâmetros é possível.
Veja exemplo:
echo $this->element('menu', array('data' => 'Alguma informação'));
Separando elements
Em determinados casos precisamos separar os element em pastas, para que isso venha funcionar perfeitamente, você deve informar juntamente ao nome do element o nome da pasta onde está esse element. Por exemplo, tenho alguns elements para o site e outros para a área administrativa deste site, então podemos criar duas pastas com nomes diferenciados, porem estás pastas devem estar dentro da pasta parão dos elements, que é a App/View/_Elements/, digamos que estas pastas se chamam Site e Admin.
Veja exemplo:
//Elemento para o site
echo $this->element('site/menu'); //caminho: /App/Views/_Elements/Site/menu.html.php
//Elemento para a área administrativa
echo $this->element('admin/menu'); //caminho: /App/Views/_Elements/Admin/menu.html.php



