Administering Drupal 8 Website: Difference between revisions
Lsokolowski1 (talk | contribs) m (→Workflows ⌘) |
Lsokolowski1 (talk | contribs) |
||
(5 intermediate revisions by the same user not shown) | |||
Line 9: | Line 9: | ||
{{Can I use your material}} | {{Can I use your material}} | ||
== Intro | == Intro == | ||
* What is '''Drupal'''? | * What is '''Drupal'''? | ||
* The '''Building Blocks''' of Drupal | * The '''Building Blocks''' of Drupal | ||
Line 19: | Line 19: | ||
* Troubleshooting Drupal | * Troubleshooting Drupal | ||
== What is Drupal | == What is Drupal == | ||
* Community | * Community | ||
* Software | * Software | ||
Line 36: | Line 36: | ||
--> | --> | ||
== Drupal Sandbox | == Drupal Sandbox == | ||
* Demo (http://simplytest.me/) | * '''Demo''' - <small>''(http://simplytest.me/)''</small> | ||
* DDEV (https://ddev.com/) | * '''DDEV''' - <small>''(https://ddev.com/)''</small> | ||
* Bitnami (http://bitnami.org/stack/drupal) | ** Overall '''docs''' - ''https://www.drupal.org/docs/develop/local-server-setup'' | ||
* AmazonEC2 | ** Specific for '''drupal(l)s''' - ''https://ddev.readthedocs.io/en/stable/users/quickstart/#__tabbed_4_3'' | ||
** Good '''alternatives''' | |||
*** '''Lando''' - <small>''(https://docs.lando.dev/)''</small> | |||
*** '''Docker4Drupal''' - <small>''(https://wodby.com/docker4drupal)''</small> | |||
*** '''Docksal''' - <small>''(https://docksal.io/)''</small> | |||
* '''Bitnami''' - <small>''(http://bitnami.org/stack/drupal)''</small> | |||
* '''AmazonEC2''', and other hosting options | |||
** ''https://www.drupal.org/hosting'' | |||
== Building Blocks | == Building Blocks == | ||
{| cellpadding="10" | {| cellpadding="10" | ||
Line 72: | Line 79: | ||
|} | |} | ||
== Extensions | == Extensions == | ||
Themes, Profiles (Distributions) and Modules are also known as '''Extensions'''. | Themes, Profiles (Distributions) and Modules are also known as '''Extensions'''. | ||
Line 99: | Line 106: | ||
http://drupal.org/project/distributions | http://drupal.org/project/distributions | ||
== Finding Admin Settings | == Finding Admin Settings == | ||
# go to ''admin/index'' | # go to ''admin/index'' | ||
# use ctrl+f (search option in the browser) to find the option you need | # use ctrl+f (search option in the browser) to find the option you need | ||
== Modules | == Drupal core versions == | ||
[[File:Dru9to10.png|600px]] | |||
== Modules == | |||
"Extend and customize Drupal functionality" | "Extend and customize Drupal functionality" | ||
* '''Contributed Modules''' are developed by Drupal community | * '''Contributed Modules''' are developed by Drupal community | ||
Line 117: | Line 127: | ||
https://www.drupal.org/project/ubercart | https://www.drupal.org/project/ubercart | ||
--> | --> | ||
=== Modules Versions | === Modules Versions === | ||
* Important when you are looking for '''Documentation''' and '''Help''' | * Important when you are looking for '''Documentation''' and '''Help''' | ||
* Security '''Upgrades''' | * Security '''Upgrades''' | ||
=== Modules Support | === Modules Support === | ||
* Issues | * Issues | ||
* Statistics | * Statistics | ||
* Documentation | * Documentation | ||
=== Useful core modules | === Useful core modules === | ||
* Book | * Book | ||
Line 134: | Line 144: | ||
* Translation-related | * Translation-related | ||
=== Exercise 1 | === Exercise 1 === | ||
<pre> | <pre> | ||
Line 146: | Line 156: | ||
--> | --> | ||
== Themes | == Themes == | ||
"Allow you to change '''the look and feel''' of your Drupal site." | "Allow you to change '''the look and feel''' of your Drupal site." | ||
* Contributed Themes | * Contributed Themes | ||
Line 155: | Line 165: | ||
* You can '''allow users''' to change your theme | * You can '''allow users''' to change your theme | ||
=== Theme Configuration | === Theme Configuration === | ||
* ''admin/appearance/settings'' | * ''admin/appearance/settings'' | ||
* Customizing '''colours''' (color module) | * Customizing '''colours''' (color module) | ||
* Configurations '''depends''' on the theme | * Configurations '''depends''' on the theme | ||
=== Exercise 2 | === Exercise 2 === | ||
<pre> | <pre> | ||
Line 173: | Line 183: | ||
--> | --> | ||
== Content | == Content == | ||
* Entities | * Entities | ||
* Nodes | * Nodes | ||
Line 179: | Line 189: | ||
* Taxonomy | * Taxonomy | ||
=== Entities | === Entities === | ||
* Entity types in core | * Entity types in core | ||
Line 195: | Line 205: | ||
https://www.drupal.org/docs/8/api/entity-api/bundles | https://www.drupal.org/docs/8/api/entity-api/bundles | ||
--> | --> | ||
=== Entities Con't | === Entities Con't === | ||
''Entity Structure Examples'' | ''Entity Structure Examples'' | ||
{| cellpadding="10" | {| cellpadding="10" | ||
Line 218: | Line 228: | ||
|} | |} | ||
=== Nodes | === Nodes === | ||
* Structure/Content types (''admin/structure/types'') | * Structure/Content types (''admin/structure/types'') | ||
* Content vs Content Types | * Content vs Content Types | ||
Line 228: | Line 238: | ||
** Autopath and Menu options, etc... | ** Autopath and Menu options, etc... | ||
=== Fields | === Fields === | ||
* Field Type vs Field Widget | * Field Type vs Field Widget | ||
* Common types are Text, Number, Date, Email, Location, etc... | * Common types are Text, Number, Date, Email, Location, etc... | ||
* Visibility in Teaser (Summary) and Full Node | * Visibility in Teaser (Summary) and Full Node | ||
=== Exercise 3 | === Exercise 3 === | ||
<pre> | <pre> | ||
Line 244: | Line 254: | ||
--> | --> | ||
=== Revisions | === Revisions === | ||
* Create new revision by default | * Create new revision by default | ||
* Log message | * Log message | ||
Line 254: | Line 264: | ||
--> | --> | ||
==== Exercise 4 | ==== Exercise 4 ==== | ||
<pre> | <pre> | ||
Line 267: | Line 277: | ||
--> | --> | ||
=== Comments | === Comments === | ||
* Moderation | * Moderation | ||
* Status | * Status | ||
==== Exercise 5 | ==== Exercise 5 ==== | ||
<pre> | <pre> | ||
Line 283: | Line 293: | ||
--> | --> | ||
=== Workflows | === Workflows === | ||
* '''Unpublished''' means visible to the author and administrators/moderators | * '''Unpublished''' means visible to the author and administrators/moderators | ||
* Content can be unpublished by default | * Content can be unpublished by default | ||
* Content Moderation (Now finally '''stable''' part of the core) | * Content Moderation (Now finally '''stable''' part of the core) | ||
=== Files | === Files === | ||
* Uploading | * Uploading | ||
==== Images | ==== Images ==== | ||
* Images can be handled via WYSIWYG or Image Field | * Images can be handled via WYSIWYG or Image Field | ||
* Configuration/Media/Image Styles (''admin/config/media/image-styles'') | * Configuration/Media/Image Styles (''admin/config/media/image-styles'') | ||
* Assign a style to Display settings in a content type | * Assign a style to Display settings in a content type | ||
=== Exercise 6 | === Exercise 6 === | ||
<pre> | <pre> | ||
Line 310: | Line 320: | ||
--> | --> | ||
=== Taxonomy | === Taxonomy === | ||
* Vocabularies and Terms | * Vocabularies and Terms | ||
* HS, Taxonomy Menu* | * HS, Taxonomy Menu* | ||
Line 317: | Line 327: | ||
https://www.drupal.org/project/taxonomy_menu | https://www.drupal.org/project/taxonomy_menu | ||
--> | --> | ||
==== Exercise 7 | ==== Exercise 7 ==== | ||
<pre> | <pre> | ||
Line 329: | Line 339: | ||
--> | --> | ||
== Users | == Users == | ||
* User Accounts settings (''admin/config/people'') | * User Accounts settings (''admin/config/people'') | ||
** Email Templates | ** Email Templates | ||
Line 341: | Line 351: | ||
https://www.drupal.org/project/profile | https://www.drupal.org/project/profile | ||
--> | --> | ||
=== Exercise 8 | === Exercise 8 === | ||
<pre> | <pre> | ||
Line 354: | Line 364: | ||
== Structure == | == Structure == | ||
=== Blocks | === Blocks === | ||
* Structure/Blocks (''admin/structure/block'') | * Structure/Blocks (''admin/structure/block'') | ||
* Blocks are part of the structure NOT content | * Blocks are part of the structure NOT content | ||
Line 364: | Line 374: | ||
** No index support (search) | ** No index support (search) | ||
=== Exercise 9 | === Exercise 9 === | ||
<pre> | <pre> | ||
Line 376: | Line 386: | ||
--> | --> | ||
=== Menus | === Menus === | ||
* Structure/Menus | * Structure/Menus | ||
* Menu vs Menu Item | * Menu vs Menu Item | ||
Line 383: | Line 393: | ||
* Two menu items to the same content | * Two menu items to the same content | ||
==== Exercise 10 | ==== Exercise 10 ==== | ||
<pre> | <pre> | ||
Line 394: | Line 404: | ||
--> | --> | ||
=== Text Formats (Input Filters) | === Text Formats (Input Filters) === | ||
* Configuration/Content Authoring/Text Formats (admin/config/content/formats) | * Configuration/Content Authoring/Text Formats (admin/config/content/formats) | ||
* Text Formats allow to filter and transform text when saving and viewing a field | * Text Formats allow to filter and transform text when saving and viewing a field | ||
Line 400: | Line 410: | ||
* Rules can overlap with WYSIWYG | * Rules can overlap with WYSIWYG | ||
=== Display modes | === Display modes === | ||
Content, Custom block, Comment, Taxonomy term, User - they can have: | Content, Custom block, Comment, Taxonomy term, User - they can have: | ||
Line 406: | Line 416: | ||
* View modes | * View modes | ||
=== Contact forms | === Contact forms === | ||
Simple default forms to serve the feedback for the site, etc | Simple default forms to serve the feedback for the site, etc | ||
=== Views | === Views === | ||
* Provides a back end to fetch information from the database | * Provides a back end to fetch information from the database | ||
Line 421: | Line 431: | ||
** Working with multilingual views | ** Working with multilingual views | ||
==== Exercise 11 | ==== Exercise 11 ==== | ||
<pre> | <pre> | ||
Line 432: | Line 442: | ||
--> | --> | ||
== Admin Tasks | == Admin Tasks == | ||
* Configuring Search | * Configuring Search | ||
* Cron | * Cron | ||
Line 445: | Line 455: | ||
--> | --> | ||
=== Exercise 12 | === Exercise 12 === | ||
<pre> | <pre> |
Latest revision as of 12:22, 21 May 2024
Administering Drupal 8 Website Training Materials
Copyright Notice
Copyright © 2004-2023 by NobleProg Limited All rights reserved.
This publication is protected by copyright, and permission must be obtained from the publisher prior to any prohibited reproduction, storage in a retrieval system, or transmission in any form or by any means, electronic, mechanical, photocopying, recording, or likewise.
Intro
- What is Drupal?
- The Building Blocks of Drupal
- Choosing and managing your themes
- Choosing and managing your modules
- Managing your content
- Ordering your content
- Managing your users
- Troubleshooting Drupal
What is Drupal
- Community
- Software
- CMS
- Framework for other project
- e-commerce
- social networks
- portals
- media portals
- LMS, CRM, ERP, etc...
Drupal Sandbox
- Demo - (http://simplytest.me/)
- DDEV - (https://ddev.com/)
- Overall docs - https://www.drupal.org/docs/develop/local-server-setup
- Specific for drupal(l)s - https://ddev.readthedocs.io/en/stable/users/quickstart/#__tabbed_4_3
- Good alternatives
- Lando - (https://docs.lando.dev/)
- Docker4Drupal - (https://wodby.com/docker4drupal)
- Docksal - (https://docksal.io/)
- Bitnami - (http://bitnami.org/stack/drupal)
- AmazonEC2, and other hosting options
Building Blocks
Extensions
|
Users
|
Content
|
Structure
|
Extensions
Themes, Profiles (Distributions) and Modules are also known as Extensions.
Distributions
A Distribution contains:
- Drupal core
- Contributed modules
- Themes
- Pre-defined configuration
Examples:
- Bear (an alternative to the Minimal or Standard profiles)
- Varbase (good starterkit)
- Open Social (social communities and intranets)
- Commerce Kickstart (e-commerce, https://install.commercekickstart.com/)
- ELMS (e-Learning Management System)
More: http://drupal.org/project/distributions
Finding Admin Settings
- go to admin/index
- use ctrl+f (search option in the browser) to find the option you need
Drupal core versions
Modules
"Extend and customize Drupal functionality"
- Contributed Modules are developed by Drupal community
- Custom Modules are not published to third parties
- Core Modules are provided by the Drupal Core
- During this course we focus on the Core Modules
Some modules are much bigger and more complex than the core!
Modules Versions
- Important when you are looking for Documentation and Help
- Security Upgrades
Modules Support
- Issues
- Statistics
- Documentation
Useful core modules
- Book
- Actions
- Forum
- Aggregator
- Translation-related
Exercise 1
Installing modules - Translate the website into another language (core module 'Language') - Create simple blog (contributed 'Blog' module)
Themes
"Allow you to change the look and feel of your Drupal site."
- Contributed Themes
- Custom Themes
- Sub-themes
- Blocks configuration can change when you change your theme
- Administration Theme
- You can allow users to change your theme
Theme Configuration
- admin/appearance/settings
- Customizing colours (color module)
- Configurations depends on the theme
Exercise 2
Installing themes - Choose and install a suitable Drupal theme - Set your admin theme to Bartik
Content
- Entities
- Nodes
- Files
- Taxonomy
Entities
- Entity types in core
- Configuration Entity
- Used by the Configuration System
- Supports translations and can provide custom defaults for installations
- Content Entity
- Consist of configurable and base fields
- Can have revisions and support translations
- Configuration Entity
- Bundles (sub-types)
- Configuration Entities that enhance a Content Entity
- Their configuration stores the differences between the content entity types, such as settings and fields
Entities Con't
Entity Structure Examples
Content Entity Types:
|
Configuration Entity Types:
|
Nodes
- Structure/Content types (admin/structure/types)
- Content vs Content Types
- Node can mean either, though Node Type is used as well
- Each Content type can differ
- Fields
- Workflow
- Permission
- Autopath and Menu options, etc...
Fields
- Field Type vs Field Widget
- Common types are Text, Number, Date, Email, Location, etc...
- Visibility in Teaser (Summary) and Full Node
Exercise 3
Creating content - Create two or three content pages (use the default content type Basic Page) - Create one Article, related to your company
Revisions
- Create new revision by default
- Log message
- Reverting
- Diff Module*
Exercise 4
Time vehicle - Edit existing basic page and add new line of text in the Body field - Change it again and add another line, same field - Revert it to the very first version - Compare version 2 and 3 (diff)
Comments
- Moderation
- Status
Exercise 5
Creating comments - Allow all users to comment basic pages - Comment one of them - Answer to that comment
Workflows
- Unpublished means visible to the author and administrators/moderators
- Content can be unpublished by default
- Content Moderation (Now finally stable part of the core)
Files
- Uploading
Images
- Images can be handled via WYSIWYG or Image Field
- Configuration/Media/Image Styles (admin/config/media/image-styles)
- Assign a style to Display settings in a content type
Exercise 6
Content types - Create your own content type, related to your company -- add at least 2 new fields, with different type of field -- add some pictures to your pages (use proper field type) -- make it appear-able in menus: Tools, Footer -- should be unpublished by default, added to the front page and sticky
Taxonomy
- Vocabularies and Terms
- HS, Taxonomy Menu*
Exercise 7
Playing with categories - Create new vocabulary related to your own content type -- Add some terms (at least 3) - Create new post and apply some taxonomy
Users
- User Accounts settings (admin/config/people)
- Email Templates
- Fields
- Profile2*
- Roles and Permissions
- Creating Roles
- Granting Permission
Exercise 8
Handling users - Create a role for only 'Basic Page' editor and assign all necessary permissions - Set permissions so only authenticated users can comment and create your content type
Structure
Blocks
- Structure/Blocks (admin/structure/block)
- Blocks are part of the structure NOT content
- No search
- No revisions
- No workflow (publish/unpublish)
- No authorship information
- No fine-grained permission for editing blocks
- No index support (search)
Exercise 9
Blocks - Position some blocks in your theme - Set which pages certain blocks should appear upon
Menus
- Structure/Menus
- Menu vs Menu Item
- Create when editing the content
- Primary/Secondary Menu
- Two menu items to the same content
Exercise 10
Menus - Build a menu for your website - Add your own type nodes to the menu (you can do this by editing the nodes too)
Text Formats (Input Filters)
- Configuration/Content Authoring/Text Formats (admin/config/content/formats)
- Text Formats allow to filter and transform text when saving and viewing a field
- Keep it Simple
- Rules can overlap with WYSIWYG
Display modes
Content, Custom block, Comment, Taxonomy term, User - they can have:
- Form modes
- View modes
Contact forms
Simple default forms to serve the feedback for the site, etc
Views
- Provides a back end to fetch information from the database
- content, user accounts, taxonomy terms, and other entities
- Can present it to the user as filtered
- a grid, HTML list, table, unformatted list, etc.
- Use cases
- Adding functionality to administrative pages
- Expanding functionality via contributed projects
- Improving table accessibility
- Working with multilingual views
Exercise 11
Views - Create new view with nodes only from your own content type -- allow users to filter it via one of the fields
Admin Tasks
- Configuring Search
- Cron
- Customizing Error Messages
- Maintenance(site offline)
- URL Aliases
- Reporting
- Configuration management
Exercise 12
URL Aliases - Make your url aliases to work auto-magically (contributed module 'pathauto')
Additional Exercises
MODULES 1. Install 'book' module and create simple wiki about your company - create one book with at least 3 pages 2. Make your website a little bit smarter/automatic - it should send email to you, each time when the basic page will be created (actions, rules) THEMES 1. Add Mayo theme and play with it's many configuration options - chose color set 'Tricolor' - change font family to 'Verdana, geneva..' - make default fonts bigger (18px) - provide rounded corners to frames (blocks and content) - add font resizing controls to the header CONTENT 1. New content type - Install the Field group module - Create a content type called Booking - Add two fields, From and To, of type Date - Create group of newly added fields called Dates (https://www.drupal.org/project/field_group) 2. Create relationship between 2 content types - make them both link-able STRUCTURE 1. Block - Create your own Custom Block Type (My Block Type) - Create block using this type and place it in Footer 2. Menu - make your Main menu nicer (https://www.drupal.org/project/tb_megamenu) 3. Taxonomy - Create 2 taxonomies with relation between them - Apply it to the basic pages 4. Views - Create view with Basic Pages and some data from related Articles (make a content reference)