Contents of the Drupal Kit

The Drupal Kit is, in Drupal terminology, a distribution. This means it includes:

  • Drupal core: the ability to create page types (nodes), content listings (views), categorization (taxonomy), rich text editing, and more.

  • Customizations and pre-built pieces, such as the Flex Page content type and The Forty Acres theme.

  • Contributed modules: optional, specialized functionality which has been created by the Drupal community.

This page summarizes where the bits that comprise the Drupal Kit originate. It also provides tips to developers for what should or should not be modified, or how modifications should be made.

Contents

Default content types

When first installed, the Drupal Kit will include 2 content types: Basic Page and Flex Page.

The Basic Page comes directly from Drupal core’s standard installation profile, and is identical to what is found in a generic Drupal installation. The Flex Page is a customized content type, designed for building unique layouts and adding open-ended content to that layout.

Important

If a site needs a content type with different functionality, developers should not modify the provided content types, but instead should create new content types. See the Tutorials for more information.

Add-on content types

Sites may add three optional content types: Event, News, and Profile. For sites not managed by ITS, developers will need to pull these components into their codebase and subsequently take responsibility for applying updates (see Installation and Updating a site).

Important

Developers may modify these add-ons, but doing so requires extra care. Subsequent updates from ITS can conflict with changes developers have introduced. To minimize this possibility, Use Drupal’s Config Override system for modifications.

Taxonomy

Drupal’s system for categorizing and tagging is called Taxonomy. Drupal Kit does not include any default taxonomy vocabularies. If a site includes the Event, News, or Profile add-on, the site will contain taxonomies for categorizing that content.

Important

Content builders may add and use taxonomy terms in the Tags vocabulary; for other categorization use cases, site builders should add new taxonomy vocabularies rather than modifying the Tags vocabulary.

Block types

In Drupal, blocks are central to the content building process: they are now the workhorse for both “reusable” and “inline” content. Unlike Drupal 7, blocks are also more robust: a “block type” can be as simple as a single chunk of rich text or a complex combination of fields.

The Drupal Kit initially installs 13 block types. The “Basic block,” which comes from Drupal core, provides only a title field and a rich text area. All other block types (see Creating and managing content) are Drupal Kit customizations.

Important

Custom block types can be extended: if site content needs the same fields but a different display, developers can register a new field formatter through Drupal’s plugin API. For more detail, see the Tutorials.

Page display options

Drupal core provides page configuration options for setting published/unpublished status, authoring information, and the page URL. The Drupal Kit supplements these with functionality from contributed modules. See the breakdown below.

Page display options

Name

Provider

Notes

Publishing status

Drupal core

Value for filtering pages’ visibility and behavior

Authoring information

Drupal core

When the page was created, updated, and by whom

Page title visibility

Contributed module (Page title visibility)

Toggles whether to display the page title

Breadcrumbs visibility

Contributed module (Breadcrumbs visibility)

Toggles whether to display the breadcrumbs

Metatags

Contributed module (Metatag)

Metadata about the page used primarily by search engines

Automatic URL alias

Contributed module (Pathauto)

Patterns for automatic URLs based on site/page data.

Tip

Some sites may need a broader range of publishing statuses for drafting and review. In Drupal 7, this was provided by the Workbench moderation contributed module. Drupal core now provides this via the “Content moderation” module, and since it’s part of core, it’s part of the Drupal Kit. Site builders may enable this module but are responsible for configuration.

Users and Roles

Upon installation, the site will include a single user with the default username “site-admin”. This user, also referred to as “User 1”, has special privileges: it bypasses all site permissions. Generally speaking, User 1 should not be used in the site building process, since its ability to bypass permissions can lead to unintended consequences. For more information, read The User 1 Account.

Other user accounts can be created from the “People” (/admin/people) page. If using the University’s Enterprise Authentication single sign on system, each username must be a valid EID. See Managing user accounts.

The site also includes predefined “roles”, which are bundles of permissions meant to regulate access to content and content-editing on the site. Documentation on Drupal’s “authenticated user” and “anonymous user” roles can be found at Users, Roles, and Permissions.

In addition to Drupal’s default roles, the Kit provides a “Content Editor” role for basic content creation. Users with this role can create pages, menus, media, and taxonomy terms, but cannot manage the site configuration.

Tip

Developers: the permissions associated with the Content Editor role are a starting point. Many sites will need to change its permission set. Developers are responsible for configuring and managing these changes; ITS, in turn, commits to avoid changes in subsequent releases that would interfere with the Content Editor role.

Views

Drupal’s Views system is responsible for all manner of content listings. Site builders may add additional Views by enabling the “Views UI” module. Default installation of the Drupal Kit includes existing Views for site administration (the content listing, user listing, and media listing). These Views may be modified by site builders, but configuration and subsequent maintenance is their responsibility.

Tip

If a site is using any of the add-on functionality (Event, News, or Profile), other Views will be present. Generally speaking, if developers want to extend the listings for these add-on features, they should first consider cloning the provided Views and reconfiguring those.

Site-wide announcement

The Drupal Kit also provides a custom site-wide announcement (see Managing site-wide announcements). Additional announcement variants may be added by site builders. Developers, however, should not modify the underlying functionality.

Text formats and the rich text toolbar

The ubiquitous formatting toolbar seen in email clients and document editing programs shows up in most content editing interfaces in Drupal. Like most things in Drupal, it is configurable. Similarly, Drupal provides “text formats,” configurable rules for how text should be formatted when displayed. The Drupal Kit installs the Drupal-provided Basic HTML, Restricted HTML, and Full HTML text formats. It also adds a Flex HTML format, designed to handle most rich-text editing needs.

Important

While the provided text formats do have configuration interfaces in the UI, they generally should not be modified; doing so could introduce conflicts to updates provided by ITS. If a site has a need for different text formats, site builders should create a new text format and rich text toolbar.

Draft workflow

As of the 3.14.0 release, content editors are able to create pages in “Draft”, “Published”, or “Archived” state, where previously those pages could only “Published” or “Unpublished”. A video playlist with an introduction and tutorials for using the new “Draft Workflow” feature is available on Microsoft Stream.

Configuration management

Originally introduced in Drupal 8, Drupal core now includes Configuration Management, a tool for developers to wrangle site configuration. Since it is a tool intended for individual site management, the Drupal Kit is not involved in and will not interfere with developers’ use of Configuration Management.

Theme

Drupal uses themes to provide different look-and-feel for site content. Themes are not simply different “skins” of the site. They also define what regions are available, as well as some behaviors of page display. Drupal core provides three themes, “Stark,” “Classy,” and “Bartik,” none of which are typically used for production sites.

The Drupal Kit supplements the available themes with The Forty Acres theme, the default implementation of the University brand guidelines in Drupal.

Tip

Developers: the Forty Acres theme should not be modified directly, but should be sub-themed so that updates to Forty Acres can be inherited without conflicting with site-specific overrides. See The Forty Acres theme documentation for more detail.

Other functionality

Much of the capability in Drupal comes from community contributions. The following lists the contributed modules that are present and enabled on a Drupal Kit site.

  • Admin Toolbar : Links to administrative tasks, displayed at the top of the page.

  • Breadcrumb visibility : Toggle whether individual pages should display the site breadcrumb.

  • CKEditor Height : Make textareas presented by CKEditor respect the row height defined by the Drupal field.

  • Date AP Style : Format date fields using the Associated Press style guide.

  • Editor Advanced Link : Additional rich text link settings.

  • Features : Bundle configuration settings on the site for import/export.

  • Feed block : Render external RSS/XML feeds within the site.

  • Google Custom Search Engine : Use Google’s search indexing to return results for the site.

  • iFrame Title Filter : Ensure embedded iframes include a “title” value for accessibility.

  • Layout Builder Modal : Edit content blocks in a modal rather than the default settings tray.

  • Layout Builder Restrictions : Regulate what types of content can be added to different page types.

  • Layout Builder Styles : Define and add styles to layout sections and content blocks.

  • Linkit : Additional rich text link settings.

  • Media Library Theme Reset : Display the media library in an administrative theme.

  • Metatag : Add metadata to pages.

  • Menu Block : Render parts of menus within pages.

  • Page Title Visibility : Toggle whether individual pages should display the page title.

  • Pathauto : Automatically generate the URL alias based on a predefined token pattern.

  • Pathologic : Help ensure that site URLs are coming from the canonical domain.

  • Qualtrics Filter (custom module): Easily embed Qualtrics forms in rich text areas.

  • Responsive Tables Filter : Improve the display of HTML tables on smaller screens.

  • Google Tag Manager : Integration with Google Analytics for site traffic tracking.

  • Redirect : Define site-level redirects, and automatically add them when existing page URLs change.

  • SVG Upload Sanitizer : Prevent malicious SVG images from being uploaded.

Important

Developers maintaining the Drupal Kit sites should not update the included modules directly. Modules will be updated as part of the Drupal Kit updates provided by ITS. See Updating a site.