回答:
ドキュメントを読んだ後(https://api.drupal.org/api/drupal/core!modules!views!src!ViewExecutable.php/class/ViewExecutable/8)、私は次のことを試しました(これはうまくいきました):
$view = \Drupal\views\Views::getView('your_view_id');
$view->setDisplay('your_display_id');
$displayObj = $view->getDisplay();
//$displayPluginTitle = $displayObj->pluginTitle()->render();
//$displayTitle = $displayObj->getOption('title');
$displayName = $displayObj->display['display_title'];
注1:TranslatableMarkupオブジェクトでrender関数を使用しています。これはpluginTitle関数が返すものです。そこでは、例えばgetUntranslatedString
NB2のような他の関数を使用することが可能かもしれません:OPを誤解しました。:-)要求されたディスプレイのタイトルではなく、ディスプレイプラグインのタイトルを返すコードの不完全な部分をコメント化しました。NB3:OPを誤解しました。再び!:-)要求されたディスプレイの名前ではなく、ディスプレイのタイトルを返すコードの不完全な部分をコメント化しました。私の弁護のために、そのプロパティには「表示名」およびその名前「display_title」というラベルが付けられています(OPで言及したとおり)。
ビューの例のスクリーンショット:
そして、表示のタイトルを(出力とともに)取得するテストスクリプト:
乾杯!
次のコードはctools_viewsモジュールに依存しています。
$view = \Drupal\views\Views::getView('your_view_id');
$view->setDisplay('your_display_id');
$displayObj = $view->getDisplay();
$displayName = $displayObj->display['display_title'];
表示タイトルを取得するには、次のコードのみが必要です。
$view = \Drupal\views\Views::getView('your_view_id');
$view->setDisplay('your_display_id');
$displayName = $view->getTitle();