|
| 1 | +# Drupal Project Content Structure Documentation |
| 2 | + |
| 3 | +This document provides a comprehensive overview of the content structure within the Drupal project. It outlines the content types, taxonomies, views, content moderation practices, user information, menus, and block content types, offering a clear understanding of how content is organized and managed. |
| 4 | + |
| 5 | +## Content Types |
| 6 | + |
| 7 | +Content types define the structure and fields for different content entities within the project. |
| 8 | + |
| 9 | +* **Page:** |
| 10 | + * **Description:** Basic static content pages. |
| 11 | + |
| 12 | +* **Non Code Contributions:** |
| 13 | + * **Description:** Captures information about contributions that do not involve coding. Examples include blog posts, documentation, and translations. |
| 14 | + * **Fields:** |
| 15 | + * Contribution Author |
| 16 | + * Contribution Date |
| 17 | + * Technology (Reference to the Technology taxonomy) |
| 18 | + * Type (Blog, Stack Overflow, Localisation) |
| 19 | + * Profile link |
| 20 | + * Credit |
| 21 | + |
| 22 | +* **Issue:** |
| 23 | + * **Description:** Represents issues (bug reports, feature requests, tasks) and is used to link them to code contributions. |
| 24 | + * **Fields:** |
| 25 | + * Link to the issue |
| 26 | + |
| 27 | +* **Event Contributions:** |
| 28 | + * **Description:** Records contributions made during specific events, such as conferences or sprints. |
| 29 | + * **Fields:** |
| 30 | + * Event (Reference to the Event content type) |
| 31 | + * Contribution Type (Reference to the Event Contribution Type taxonomy) |
| 32 | + * Contribution Link |
| 33 | + * Technology (Reference to the Technology taxonomy) |
| 34 | + * Contribution Author |
| 35 | + * Contribution Date |
| 36 | + * Contribution Comments |
| 37 | + |
| 38 | +* **Event:** |
| 39 | + * **Description:** Represents events that are referenced in event contributions. |
| 40 | + * **Fields:** |
| 41 | + * Event Dates |
| 42 | + * Event Type (Reference to the Event Type taxonomy) |
| 43 | + * Event Location |
| 44 | + * Event Address |
| 45 | + * Event Link |
| 46 | + * Event Additional Links |
| 47 | + |
| 48 | +* **Code contributions:** |
| 49 | + * **Description:** Captures details about code contributions. |
| 50 | + * **Fields:** |
| 51 | + * Contribution Project (Reference to the Project taxonomy) |
| 52 | + * Contribution Issue Link |
| 53 | + * Contribution Type (Reference to the Contribution Type taxonomy) |
| 54 | + * Contribution Link |
| 55 | + * Contribution Details |
| 56 | + |
| 57 | +## Taxonomies |
| 58 | + |
| 59 | +Taxonomies are used to categorize and classify content, enabling better organization and filtering. |
| 60 | + |
| 61 | +* **Technology:** |
| 62 | + * **Description:** Used to categorize contributions by the technologies they relate to. |
| 63 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/taxonomy.vocabulary.technology.yml` |
| 64 | + |
| 65 | +* **Tags:** |
| 66 | + * **Description:** Used for free-form tagging of articles on similar topics. |
| 67 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/taxonomy.vocabulary.tags.yml` |
| 68 | + |
| 69 | +* **Project:** |
| 70 | + * **Description:** Stores projects related to community contributions. |
| 71 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/taxonomy.vocabulary.project.yml` |
| 72 | + |
| 73 | +* **Event Type:** |
| 74 | + * **Description:** Stores the types of events, such as DrupalCamp or DrupalCon. |
| 75 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/taxonomy.vocabulary.event_type.yml` |
| 76 | + |
| 77 | +* **Event Contribution Type:** |
| 78 | + * **Description:** Stores the types of contributions made at events (e.g., session, volunteering). |
| 79 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/taxonomy.vocabulary.event_contribution_type.yml` |
| 80 | + |
| 81 | +* **Contribution Type:** |
| 82 | + * **Description:** Stores the different types of contributions (e.g., submitting a patch, porting a module). |
| 83 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/taxonomy.vocabulary.contribution_type.yml` |
| 84 | + |
| 85 | +## Views |
| 86 | + |
| 87 | +Views are used to create dynamic lists and displays of content. |
| 88 | + |
| 89 | +* **Patches:** |
| 90 | + * **Description:** Lists all patches. |
| 91 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/views.view.patches.yml` |
| 92 | + |
| 93 | +* **Patches on issues:** |
| 94 | + * **Description:** Lists patches associated with specific issues. |
| 95 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/views.view.patches_on_issues.yml` |
| 96 | + |
| 97 | +* **Non code contributions:** |
| 98 | + * **Description:** Lists all non-code contributions. |
| 99 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/views.view.non_code_contributions.yml` |
| 100 | + |
| 101 | +* **Event Contributions:** |
| 102 | + * **Description:** Lists all event contributions. |
| 103 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/views.view.event_contributions.yml` |
| 104 | + |
| 105 | +* **All Contributions:** |
| 106 | + * **Description:** Aggregates all types of contributions into a single view. |
| 107 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/views.view.all_contributions.yml` |
| 108 | + |
| 109 | +* **Code contributions:** |
| 110 | + * **Description:** Lists all code contributions. |
| 111 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/views.view.code_contributions.yml` |
| 112 | + |
| 113 | +* **Content:** |
| 114 | + * **Description:** Provides an administrative interface for finding and managing content. |
| 115 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/views.view.content.yml` |
| 116 | + |
| 117 | +* **Recent content:** |
| 118 | + * **Description:** Lists recently created content. |
| 119 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/views.view.content_recent.yml` |
| 120 | + |
| 121 | +* **Files:** |
| 122 | + * **Description:** Provides an administrative interface for listing and managing files. |
| 123 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/views.view.files.yml` |
| 124 | + |
| 125 | +* **Frontpage:** |
| 126 | + * **Description:** Lists content that has been promoted to the front page. |
| 127 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/views.view.frontpage.yml` |
| 128 | + |
| 129 | +* **People:** |
| 130 | + * **Description:** Provides an administrative interface for finding and managing user accounts. |
| 131 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/views.view.user_admin_people.yml` |
| 132 | + |
| 133 | +* **Taxonomy term:** |
| 134 | + * **Description:** Lists content associated with a specific taxonomy term. |
| 135 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/views.view.taxonomy_term.yml` |
| 136 | + |
| 137 | +## Content Moderation |
| 138 | + |
| 139 | +* A "Contribution Moderator" role is defined, which can approve contributions by flagging them. The flag configuration is located at `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/flag.flag.contribution_approval.yml`. |
| 140 | + |
| 141 | +## User Information |
| 142 | + |
| 143 | +* Drupal.org and Github usernames are tracked via custom fields on the user entity. |
| 144 | + * `field_do_username` configuration is located at `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/field.storage.user.field_do_username.yml`. |
| 145 | + * `field_github_username` configuration is located at `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/field.storage.user.field_github_username.yml`. |
| 146 | + |
| 147 | +## Menus |
| 148 | + |
| 149 | +Menus provide navigation and structure to the site. |
| 150 | + |
| 151 | +* **Main navigation:** |
| 152 | + * **Description:** Provides links to the main sections of the site. |
| 153 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/system.menu.main.yml` |
| 154 | + |
| 155 | +* **Footer:** |
| 156 | + * **Description:** Contains links to site information, such as legal notices and contact information. |
| 157 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/system.menu.footer.yml` |
| 158 | + |
| 159 | +* **Tools:** |
| 160 | + * **Description:** Contains links to user tools, often added by modules. |
| 161 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/system.menu.tools.yml` |
| 162 | + |
| 163 | +* **Adminstration:** |
| 164 | + * **Description:** Exposes links related to administrative tasks. |
| 165 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/system.menu.admin.yml` |
| 166 | + |
| 167 | +## Block Content Types |
| 168 | + |
| 169 | +Basic blocks are used for reusable content snippets. |
| 170 | + |
| 171 | +* **Social Sharing:** |
| 172 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/fixed_block_content.fixed_block_content.social_sharing.yml` |
| 173 | +* **Quick Links:** |
| 174 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/fixed_block_content.fixed_block_content.quick_links.yml` |
| 175 | +* **Blog:** |
| 176 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/fixed_block_content.fixed_block_content.blog.yml` |
| 177 | +* **Axelerant Logo:** |
| 178 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/fixed_block_content.fixed_block_content.axelerant_logo.yml` |
| 179 | +* **Axelerant Footer:** |
| 180 | + * **Configuration:** `/tmp/12493156-1e7a-4ef2-8ddf-88c8f2d5c76f/repo-dir/config/sync/fixed_block_content.fixed_block_content.axelerant_footer.yml` |
0 commit comments