2017-11-30 21 views
0

URLまたはルート名からページのタイトルを取得することは可能ですか?Drupal 8:パス名またはルート名からタイトルを取得できますか?

私は例えばルータ名を持っている:view.topics_landing_page.page

たり、同じページには、パスがあります:パスまたはルート名のいずれかを使用することにより/トピック を、私が取得したいですタイトルEg: - トピック。

可能ですか?

ありがとうございました。

答えて

0

Drupal 8にはページタイトルのコア機能があります。

あなたが「ページタイトル」[リンク:あなたのドメイン/管理/構成/ブロック]を見ることができるブロック構造で

あなたは、現在のページのタイトルを表示したい任意の領域に、このいずれかを使用することができます。 リージョンをこのブロックに設定した後にキャッシュをクリアします.. !!

+0

返信いただきありがとうございます。はい、知っています。しかし、私が探しているのは違う。私は、現在のページURLからではなく、そのページのURLから、そのURLまたはルート名から別のページのタイトルを取得するためのブレッドクラムを作成しています。 – sumith

0

URL /ルートのページタイトルを取得する唯一の方法は、実際にページをリクエストしてタイトルが何であるかを確認することです。その理由は、どのモジュールやテーマでも、fxのmetatagsモジュールのように、通常どおりにタイトルを変更できるからです。

あなたがこれを行うことができ、現在のページのタイトルを取得するには、次の

$request = \Drupal::request(); 
    if ($route = $request->attributes->get(\Symfony\Cmf\Component\Routing\RouteObjectInterface::ROUTE_OBJECT)) { 
    $title = \Drupal::service('title_resolver')->getTitle($request, $route); 
} 

をしかし、あなたが行うことができ、他の事はbreadcrumb.html.twigテンプレートをオーバーライドしています。これにより、ブレッドクラムブロックを配置する場所にテンプレートがレンダリングされます。

関連する問題