いくつかのビュー テンプレート (ページ コンテンツをレンダリングするビュー テンプレートとサイドバーをレンダリングするビュー テンプレート) の Web ページを構成する必要があります。私の layout.phtml には、$content と $sidebar という 2 つの変数プレースホルダーがあります。
......
<?php echo $this->sidebar; ?>
......
<?php echo $this->content; ?>
......
コントローラーのアクションでは、ツリーにチェーンされた ViewModel を介してこれらのビュー テンプレートにデータを渡します。
public function indexAction() {
 // Preparing my data
 // $form = ...
 // $menuItems = 
 // $activeItem =       
 // Create sidebar view model
 $sidebarViewModel = new ViewModel(array('menuItems'=>$menuItems, 'activeItem'=>$activeItem));
 // Add it as a child to layout view model
 $this->layout()->addChild($sidebarViewModel, 'sidebar');
 // Page content view model
 $viewModel = new ViewModel(array('form'=>$form));
 return $viewModel;     
}
ただし、すべてのページにサイドバーがあるため、すべてのコントローラーのすべてのアクションに対してこのコードをコピーして貼り付ける必要があります。サイドバーの ViewModel を設定するコードを再利用する推奨される方法はありますか?