Trait CellTrait

Provides cell() method for usage in Controller and View classes.

Namespace: Cake\View

Method Summary

  • _createCell() protected

    Create and configure the cell instance.

  • cell() protected

    Renders the given cell.

Method Detail

_createCell() protected

_createCell(string $className, string $action, ?string $plugin, array $options)

Create and configure the cell instance.

Parameters

string $className

The cell classname.

string $action

The action name.

string|null $plugin

The plugin name.

array $options

The constructor options for the cell.

Returns

\Cake\View\Cell

cell() protected

cell(string $cell, array $data, array $options)

Renders the given cell.

Example:

// Taxonomy\View\Cell\TagCloudCell::smallList()
$cell = $this->cell('Taxonomy.TagCloud::smallList', ['limit' => 10]);

// App\View\Cell\TagCloudCell::smallList()
$cell = $this->cell('TagCloud::smallList', ['limit' => 10]);

The display action will be used by default when no action is provided:

// Taxonomy\View\Cell\TagCloudCell::display()
$cell = $this->cell('Taxonomy.TagCloud');

Cells are not rendered until they are echoed.

Parameters

string $cell

You must indicate cell name, and optionally a cell action. e.g.: TagCloud::smallList will invoke View\Cell\TagCloudCell::smallList(), display action will be invoked by default when none is provided.

array $data optional

Additional arguments for cell method. e.g.: cell('TagCloud::smallList', ['a1' => 'v1', 'a2' => 'v2']) maps to View\Cell\TagCloud::smallList(v1, v2)

array $options optional

Options for Cell's constructor

Returns

\Cake\View\Cell

The cell instance

Throws

Cake\View\Exception\MissingCellException
If Cell class was not found.
BadMethodCallException
If Cell class does not specified cell action.

© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.0/trait-Cake.View.CellTrait.html