public function createBreadcrumb(Model $model, $id = null, $link = null, $escape = true) {
		$result = [];
		if (empty($id)) {
			$name = $model->getGroupName();
		} else {
			$name = $model->getName($id);
		}
		if (empty($name)) {
			return $result;
		}
		if ($escape) {
			$name = h($name);
		}

		if ($link === false) {
			$link = null;
		} else {
			if (!is_array($link)) {
				$link = [];
			}
			$plugin = $model->getPluginName();
			$controller = $model->getControllerName();
			if (empty($id)) {
				$action = 'index';
			} else {
				$action = $model->getActionName();
				if (empty($link)) {
					$link[] = $id;
				}
			}
			$link += compact('plugin', 'controller', 'action');
		}

		$name = CakeText::truncate($name, CAKE_THEME_BREADCRUMBS_TEXT_LIMIT);
		$result = [
			$name,
			$link
		];

		return $result;
	}