[Drupal]ワークフロー周りのチートシート
Content ModerationモジュールとWorkflowsモジュールで実装しているワークフロー周りのチートシートです。
※随時追加予定
ノードが使用しているワークフロータイプのマシン名を取得する
$workflow_type = \Drupal::service('entity_type.bundle.info')
->getBundleInfo('node')[$node->bundle()]['workflow'];
特定のタイプのワークフローのコンフィグエンティティを召喚する
// ワークフローのコンフィグエンティティ.
$workflow = \Drupal::service('entity_type.manager')
->getStorage('workflow')
->load(WORKFLOW_TYPE);
// モデレーション状態のマシン名やラベル等の配列.
$workflow->get('type_settings')['states'];
// デフォルトのモデレーション状態.
$workflow->get('type_settings')['default_moderation_state']
ワークフローのコンフィグエンティティからモデレーション状態のコンフィグエンティティを召喚する
// モデレーション状態のエンティティの配列を召喚する.
$moderation_states = $workflow->getTypePlugin()->getStates();
// 特定のモデレーション状態のエンティティを召喚する.
$moderation_state = $workflow->getTypePlugin()->getState('draft');
// モデレーション状態のラベルを取得する.
$moderation_state->label();
// モデレーション状態のウェイトを取得する.
$moderation_state->weight();
// モデレーション状態が公開かどうか確認する.
$moderation_state->isPublishedState();
// モデレーション状態がデフォルトリビジョンか確認する.
$moderation_state->isDefaultRevisionState();
Author And Source
この問題について([Drupal]ワークフロー周りのチートシート), 我々は、より多くの情報をここで見つけました https://qiita.com/863/items/235bb076f8698e74eef4著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .