CakePHP: View Helper Callbacks. CakePHP provides view helper callbacks to perform some complex logic.
Source : http://programming-tips.in/cakephp-view-helper-callbacks/
CakePHP: View Helper Callbacks
CakePHP provides view helper callbacks to perform some complex logic.
beforeRenderFile($viewFile)
Is called before each view file(elements, views, parent views and layouts) is rendered.
afterRenderFile($viewFile, $content)
Is called after each view file(elements, views, parent views and layouts) is rendered.
beforeRender($viewFile)
The beforeRender method is called after the controller’s beforeRender method but before the controller renders view and layout.
afterRender($viewFile)
Is called after the view has been rendered but before layout rendering has started.
beforeLayout($layoutFile)
Is called before layout rendering starts.
afterLayout($layoutFile)
Is called after layout rendering is complete.
Example:
// CustomHelper
class CustomHelper extends AppHelper {
public function beforeRenderFile(){
parent::beforeRenderFile();
}
public function afterRenderFile(){
parent::afterRenderFile();
}
public function beforeRender(){
parent::beforeRender();
}
public function afterRender(){
parent::afterRender();
}
public function beforeLayout(){
parent::beforeLayout();
}
public function afterLayout(){
parent::afterLayout();
}
public function hello($name) {
return 'Hello: '. $name;
}
}
App::uses('Helper', 'View');
class AppHelper extends Helper {
public function beforeRenderFile(){
parent::beforeRenderFile();
}
public function afterRenderFile(){
parent::afterRenderFile();
}
public function beforeRender(){
parent::beforeRender();
}
public function afterRender(){
parent::afterRender();
}
public function beforeLayout(){
parent::beforeLayout();
}
public function afterLayout(){
parent::afterLayout();
}
}
Now, use your helper callback as per you requirement.
