How can I know if a type of content is moderated?
문제
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.
해결책
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())) {
// ...
}
제휴하지 않습니다 drupal.stackexchange