Question

I'm trying to find out if a type of content (not a node) is being moderated. How can I determine it?

For example:

function MY_MODULE_form_node_type_form_alter(&$form, FormStateInterface $form_state, $form_id) {
   $content_type = $form_state->getFormObject()->getEntity(); // $content_type is a Drupal\node\Entity\NodeType
}

I can't find a way to find out if this type of content is being moderated by some type of workflow.

Était-ce utile?

La solution

You should be able to get that from ModerationInformation:: shouldModerateEntitiesOfBundle(), via the content_moderation.moderation_information service:

$moderation_info = \Drupal::service('content_moderation.moderation_information');
$entity_type = \Drupal::entityTypeManager()->getDefinition('node');
if ($moderation_info->shouldModerateEntitiesOfBundle($entity_type, $content_type->id())) {
  // ...
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à drupal.stackexchange
scroll top