drupal_get_title()
Drupal 8'den kaldırıldı. Drupal 8'deki sayfa başlığını nasıl alabilirim?
drupal_get_title()
Drupal 8'den kaldırıldı. Drupal 8'deki sayfa başlığını nasıl alabilirim?
Yanıtlar:
Değişiklik kayıtlarını kontrol ederseniz aşağıdakileri bulmalısınız : drupal_set_title () ve drupal_get_title () kaldırıldı .
Tüm bilgiler için değişiklik bildirimini okumalısınız, ancak işte bir başlangıç noktası:
drupal_get_title ()
Rotalardaki başlıklar artık çeşitli yollarla ayarlanabildiğinden (yukarıya bakın), drupal_get_title () kaldırıldı. Onun yerine title_resolver hizmetini çağırmalısınız.
Drupal 7
<?php $title = drupal_get_title(); ?>
Drupal 8
<?php $request = \Drupal::request(); if ($route = $request->attributes->get(\Symfony\Cmf\Component\Routing\RouteObjectInterface::ROUTE_OBJECT)) { $title = \Drupal::service('title_resolver')->getTitle($request, $route); } ?>
Gereğince batch_test.module
(D8.4) şu sadece para cezası çalışması gerekir:
$request = \Drupal::request();
$route_match = \Drupal::routeMatch();
$title = \Drupal::service('title_resolver')->getTitle($request, $route_match->getRouteObject());
Daha fazla bilgi için bkz public function TitleResolver::getTitle
.
Bu soru için kabul edilen yanıt güncel değil: Bkz. İstek parametreleri, rota adı ve rota nesnesine RouteMatch aracılığıyla erişilmelidir .
Geçerli rotayı almak için current_route_match hizmetini kullanmalı ve ardından parametrelerini okumalı veya değiştirmelisiniz. Bu herhangi bir Symfony vb büyü sarar.
Yordamsal kodda, aşağıdakine benzer bir kod kullanırsınız.
$route = \Drupal::routeMatch()->getCurrentRouteMatch()->getRouteObject();
$title = $route->getDefault('_title');
Nesneye yönelik kodda, bağımlılık enjeksiyonunu kullanmalı ve servisi enjekte etmelisiniz .
$route->getDefault('_title');
Sadece a değil , ne yapmalı $route->getDefault('_title_callback');
?
Drupal 8
$request = \Drupal::request();
// Assuming the Request is $request.
if ($request->attributes->has('_title')) {
return $request->attributes->get('_title');
}
->get('_MAGIC')
yöntem maalesef kullanımdan kaldırılmış ve çoğunlukla D8'den kaldırılmış gibi görünüyor : drupal.org/node/2124749