id: d6_block label: Blocks migration_tags: - Drupal 6 - Configuration source: plugin: block process: # Block status is not a thing in Drupal 8, so this is how we skip over # disabled blocks. status: plugin: skip_on_empty method: row source: status id: # We need something unique, so aggregator, aggregator_1 etc will do. plugin: make_unique_entity_field entity_type: block field: id postfix: _ length: 32 source: module plugin: - plugin: static_map bypass: true source: - module - delta map: book: 0: book_navigation comment: 0: views_block:comments_recent-block_1 forum: 0: forum_active_block 1: forum_new_block locale: 0: language_block node: 0: node_syndicate_block search: 0: search_form_block statistics: 0: statistics_popular_block system: 0: system_powered_by_block user: 0: user_login_block 1: system_menu_block:tools 2: views_block:who_s_new-block_1 3: views_block:who_s_online-who_s_online_block - plugin: block_plugin_id - plugin: skip_on_empty method: row theme: plugin: block_theme source: - theme - default_theme - admin_theme region: plugin: block_region source: - theme - '@theme' - region map: garland: bartik: # Garland 6.x --> Bartik 8.x header: header footer: footer_fifth left: sidebar_first right: sidebar_second # If mapping fails, put the block in the content region. default_value: content weight: weight settings: plugin: block_settings source: - '@plugin' - delta - settings - title visibility: plugin: block_visibility source: - visibility - pages - roles # If the block uses PHP visibility, don't migrate it unless the PHP module # is enabled. skip_php: true destination: plugin: entity:block migration_dependencies: required: - menu - d6_custom_block - d6_user_role