web-dev-qa-db-ja.com

フラグのフラグ数を取得するにはどうすればよいですか?

Drupal 7 Flagsモジュールのドキュメントが表示されますが、Drupal 8.のドキュメントはほとんどありません。Drupal 8ノード(これはイベントです)このノードに多数のサインアップ(フラグ)が追加されている場合、サインアップリンクを非表示にする必要があります。

次のコードを使用してhook_preprocess_flag()で試しています。

$flag_service = \Drupal::service('flag');
$flag = $flag_service->getFlagById('signup');

どのフラグがそのフラグのflag_countを取得しますか?

1
MEI

エンティティのフラグカウントには、次を使用します。

$flag_service = Drupal::service('flag.count');
$counts = $flag_service->getEntityFlagCounts($node);

フラグエンティティのフラグカウントの使用:

$flag_service->getFlagFlaggingCount($flag);

あなたはここでサービスからすべての機能を見つけることができます:

/modules/contrib/flag/src/FlagCountManager.php

1
Insasse