5.8.0
Note
Elements with Link fields created before Craft 5.5.0 should be resaved to take advantage of the new “is of type” condition rule operator. (#17277)
Note
Elements with multi-instance relation fields created before Craft 5.3.0 should be resaved to ensure their condition rules continue to work properly. (#17295)
Content Management
- Element edit pages now have “Validate [type]” actions. (#17316)
- Matrix fields set to the “inline-editable blocks” view mode now have “Expand all blocks” and “Collapse all blocks” actions. (#17141)
- Relation fields set to a single element source will now show a search input by default. (#17497)
- Link fields’ condition rules now have an “is of type” operator. (#17277)
- Link fields now allow URLs without TLDs. (#17450)
- Link fields’ default URL labels now strip the trailing slash from URLs that don’t include URIs.
- Content previews for Plain Text fields are now shown in a fixed-width font if “Use a monospaced font” is enabled. (#17447)
- Read-only relational fields now display element chips/cards more consistently with editable fields. (#17146)
- Added the “Notification Position” and “Sideout Position” user preferences. (#17169)
- Button Group, Dropdown, and Radio Buttons fields now display their selected option’s icon/color within field previews. (#17178)
- Improved the wording of validation errors caused by relational fields’ “Validate related [type]” settings. (#9960)
- URL chips within Link fields are now truncated if wider than the container, and have a “Copy URL” action. (#17339)
- Users with “Moderate users” permission can now send activation emails. (#17362)
- Source headings within element indexes are now collapsible. (#17226)
- Element condition builders now show condition rules for custom fields with duplicate names. (#17361)
- After creating a new entry or category via a selector modal, the modal will now set its search input to the new element’s title. (#17480)
Accessibility
- The Crop tool within the Image Editor is now screen reader and keyboard accessible. (#17358)
- Lightswitches now have a checkmark icon when turned on, and improved styling. (#17492)
Administration
- Added the “Content Block” field type. (#17424)
- Added support for Generated Fields. (#17426)
- Matrix fields’ entry type selections can now be grouped. (#17425)
- Matrix fields with more than five entry types now show a search input within entry creation menus. (#17425)
- Relation fields set to a single element source now have a “Show the search input” setting. (#17497)
- Icon fields now expose the Font Awesome icon styles supported by the selected icon. (#17419)
- Icon fields now have a “GraphQL Mode” setting, with “Full data” and “Name only” options. (#17419)
- It’s now possible to customize the thumbnail alignment within element cards. (#17193)
- Assets and Categories fields no longer have “Show the site menu” settings. (#17156)
- Entry type edit pages now have a “Save as a new entry type” action. (#15977)
- Entry types can now have descriptions, which manifest as info icons within entry type chips. (#17483)
- Added the “Delete entries for site” and “Delete other users’ entries for site” user permissions, for sections with a propagation method set to “Let each entry choose which sites it should be saved to”. (#17313)
- Entry action menus now have “Entry type settings” and “Section settings” actions, for admin users on environments that allow admin changes. (#10112, #17438)
- “Field” condition rules for entry conditions now include an “is empty” operator.
- Address conditions can now have a “Field” rule. (#17502)
- The
accessibilityDefaultsconfig setting can now containnotificationPositionandslideoutPositionkeys. (#17169) - The
autoLoginAfterAccountActivationconfig setting no longer applies to the password reset flow. (#17522) - The full suite of Font Awesome icons is now available to Icons fields. (#17440)
Development
- Added
<handle>EntryGraphQL queries for each Single section, which resolve to the single entry within them. (#17278) - GraphQL requests now return error messages for client-safe exceptions, even if Dev Mode is disabled. (#17504)
Extensibility
- Element edit pages now support being passed a hashed
returnUrlquery string param. (#17137) - Added
craft\base\Describable. - Added
craft\base\Element::EVENT_RENDER. (#17188) - Added
craft\base\Element::partialTemplatePathCandidates(). - Added
craft\base\ElementInterface::getGeneratedFieldValues(). - Added
craft\base\ElementInterface::render(). - Added
craft\base\ElementInterface::setGeneratedFieldValues(). - Added
craft\base\ElementTrait::$updateSearchIndexImmediately. - Added
craft\base\Field::RESERVED_HANDLES. - Added
craft\base\FieldInterface::showStatus(). - Added
craft\elements\Asset::setMimeType(). - Added
craft\elements\ContentBlock. - Added
craft\elements\db\ContentBlockQuery. - Added
craft\events\RenderElementEvent. (#17188) - Added
craft\fieldlayoutelements\BaseField::showStatus(). - Added
craft\fields\BaseRelationField::$showSearchInput. - Added
craft\fields\BaseRelationField::canShowSiteMenu(). - Added
craft\fields\BaseRelationField::hasSelectionCondition(). - Added
craft\fields\BaseRelationField::showSearchInput(). - Added
craft\fields\conditions\GeneratedFieldConditionRule. - Added
craft\fields\conditions\LinkFieldConditionRule. - Added
craft\fields\data\IconData. - Added
craft\fields\data\OptionData::$color. - Added
craft\fields\data\OptionData::$icon. - Added
craft\gql\arguments\elements\ContentBlock. - Added
craft\gql\interfaces\elements\ContentBlock. - Added
craft\gql\resolvers\elements\ContentBlock. - Added
craft\gql\types\IconData. - Added
craft\gql\types\elements\ContentBlock. - Added
craft\gql\types\generators\ContentBlock. - Added
craft\gql\types\generators\IconDataType. - Added
craft\gql\types\input\ContentBlock. - Added
craft\helpers\Cp::buttonGroupFieldHtml(). - Added
craft\helpers\Cp::buttonGroupHtml(). - Added
craft\helpers\Cp::editableTableHtml(). - Added
craft\helpers\Cp::generatedFieldsTableHtml(). - Added
craft\helpers\ElementHelper::isMultiSite(). - Added
craft\helpers\ElementHelper::setProvisionalDraftUser(). - Added
craft\models\EntryType::$description. - Added
craft\models\EntryType::$group. - Added
craft\models\FieldLayout::getCardThumbAlignment(). - Added
craft\models\FieldLayout::getGeneratedFieldByUid(). - Added
craft\models\FieldLayout::getGeneratedFields(). - Added
craft\models\FieldLayout::isUiElementIncluded(). - Added
craft\models\FieldLayout::resetUids(). - Added
craft\models\FieldLayout::setCardThumbAlignment(). - Added
craft\models\FieldLayout::setGeneratedFields(). - Added
craft\records\ContentBlock. - Added
craft\services\Gql::defineContentArgumentsForGeneratedFields(). - Added
craft\web\Request::getValidatedQueryParam(). craft\elements\Asset::getMimeType()now returns the file’s actual MIME type (rather than the MIME type associated with the file’s extension), for locally-stored assets. (#17254)craft\fields\data\ColorDatanow extendscraft\base\Modeland includesblue,green,hex,luma,red, andrgbattributes in its array keys. (#17265)craft\services\Assets::replaceAssetFile()now has a$mimeTypeargument.craft\services\Users::saveUserPhoto()now has a$mimeTypeargument.craft\validators\HandleValidatornow supportsvalidateValue().- Added the
buttonGroupandbuttonGroupFieldmacros to the_includes/forms.twigtemplate. - Added the
_includes/forms/buttonGroup.twigtemplate. - The
_layouts/cp.twigtemplate now supports passing anactionButtonvariable. (#17423) Craft.CpScreenSlideoutnow supports overriding thecloseOnEsc,closeOnShadeClick,containerElement, andcontainerAttributessettings. Slideouts with a non-<form>container element won’t get a “Save” button, and the close button will be labelled “Close” rather than “Cancel”. (#13593)Craft.EntryTypeSelectInputnow triggers anapplySettingsevent. (#17387)- Deprecated
craft\web\assets\picturefill\PicturefillAsset. (#17344) - Deprecated
craft\elements\db\ElementQuery::customFields(). - Improved control panel CSS variable names. (#17465)
System
- Email verification links now show a form with a “Verify” button, which must be submitted before the email address is actually verified. (#17392)
- Requests with user verification codes are now redirected to the login page by default. (#17392)
- Assets now keep track of their MIME types when uploaded, improving the accuracy of
craft\elements\Asset::getMimeType(). (#17254) - Reduced the number of SQL queries executed when fetching entries. (#17326)
- Fixed an error that could occur when indexing assets. (#17240)
- Fixed a bug where some partially-translated system languages were available for users’ Language preferences.
- Fixed a bug where single-instance UI elements could be added to field layouts multiple times. (#17485)
- Fixed a bug where nested element index contents could overflow their container element. (#17487)
- Fixed a bug where Link field previews only displayed the linked URL. (#17369)
- Fixed a bug where field layout designers weren’t showing validation errors when saved within a slideout. (#16684)
- Fixed a bug where Single section entries weren’t showing a “Singles” breadcrumb. (#17508)
- Fixed a bug where provisional drafts were showing up in element index results when filtering by “Live” status. (#17517)
- Fixed an error that could occur when applying project config changes, if a plugin was uninstalled in the project config but still Composer-installed. (#17479)
- Fixed a bug where provisional drafts weren’t showing up within Live Preview for cross-domain requests. (#17488)