How to get all parent menu items' titles of the current node? I know I can load the node's menu item like so:

$node_id = $node-&gt;id();
$menu_link_manager = \Drupal::service('plugin.manager.menu.link');
$result = $menu_link_manager-&gt;loadLinksByRoute('entity.node.canonical', array('node' =&gt; $node_id));


But to use a menu structure in a breadcrumb I need to load all parent menu items. I feel like the menu service provides such a function but I dont get anything out of the documentation. This here seems pretty mighty but it really lacks documentation.

Edit: I've already came this far:

$node_id = $node-&gt;id();
$menu_link_manager = \Drupal::service('plugin.manager.menu.link');
$menu_link = $menu_link_manager-&gt;loadLinksByRoute('entity.node.canonical', array('node' =&gt; $node_id));

if (is_array($menu_link) &amp;&amp; count($menu_link)) {
  $menu_link = reset($menu_link);
  if ($menu_link-&gt;getParent()) {
    $parents = $menu_link_manager-&gt;getParentIds($menu_link-&gt;getParent());
    dpm($parents);
  }
}


and it gives me:

Array
(
  [menu_link_content:2fd24ddd-19e2-4e8f-9764-839b3f51139e] =&gt; menu_link_content:2fd24ddd-19e2-4e8f-9764-839b3f51139e
  [menu_link_content:e30b827f-bc67-4892-b23f-28b23188ffd4] =&gt; menu_link_content:e30b827f-bc67-4892-b23f-28b23188ffd4
)


Is there an easy way to get those titles?
Even shorter using the MenuActiveTrailInterface.

$node_id = $node-&gt;id();
$menu_link_manager = \Drupal::service('plugin.manager.menu.link');
$menu_link = $menu_link_manager-&gt;loadLinksByRoute('entity.node.canonical', array('node' =&gt; $node_id));
$currentPluginId = $menu_link-&gt;getPluginId();
$trailIds = $this-&gt;menuActiveTrail-&gt;getActiveTrailIds('main');

foreach (array_reverse($trailIds) as $key =&gt; $value) {
  if ($value &amp;&amp; $value !== $currentPluginId) {
    $breadcrumb-&gt;addLink(
      new Link(
        $menu_link_manager-&gt;createInstance($value)-&gt;getTitle(),
        $menu_link_manager-&gt;createInstance($value)-&gt;getUrlObject()
      )
    );
  }
}