Changelog
-
Alt, title and copyright info for assets
It's now possible to define additional attributes like alt-tag, title and copyright information in the asset manager.
-
Better headline button in Richtext
Changes in: PermalinkThe headline button in the Richtext field has been improved and now shows the active headline size when selecting a headline.
-
Content type blueprints
Changes in: PermalinkIt's now easier to get started with Storyblok for new users. With the improved content creation dialog the user has now the possibility to create content types with predefined fields for common types.
-
New app type "Tool"
It's now possible to create Oauth apps for the "Tools" section. To create a tool app you need to register as a partner at https://www.storyblok.com/partners and choose "Tool" as app type when creating the app. Check out our the example app https://github.com/storyblok/storyblok-tool-example
-
App dev environment
It's now possible to set the Oauth urls for development and live. In the past you only had the option of a single callback url. To create apps you need to register as a partner at https://www.storyblok.com/partners. Check out also our new example app https://github.com/storyblok/storyblok-workflow-app
-
Improved preset management
Presets are now manageable in the components overview and they got a new interface in the tab "Presets".
-
Publish all languages at once
It's now possible to publish all languages with the button "Publish all" for spaces that have individual language publishing enabled.
-
Interface Translations Shipped
Moved Interface Translations of app.storyblok.com to GitHub and launched multiple new languages.
Now the following languages are available:
- English (Default)
- German
- Dutch
- French
- Swedish
- Japanese
- Chinese
- Italian
If you want to help us bringing Storyblok into more languages feel free to contribute on GitHub as we’re going to add more translation strings soon.
-
Activities and items assigned to user in dashboard
The dashboard view has been improved to easily get back to work on your last edited items.
Below the charts you can now see your last edits, items that have been assigned to you and recent content changes of all collaborators.
-
Component creation permissions
It's now possible to add a components denylist in the "Components" tab of the role settings. If you add a content type it will not be visible in the content type selection when creating a new content item. When you add a nestable component it will be hidden in the "Add block" dialog.
-
Sort by multiple attributes
It's now possible to sort by multiple columns with the content management api by using a comma separated list of values.
Examples:
/v1/stories?sort_by=content.priority:asc:int,name:asc
/v1/stories?sort_by=content.firstname:asc,content.lastname:desc
-
Define multiple folders for option(s) field
It's now possible to define multiple folders in the single-option and multi-option field using a comma separated list of paths.
-
Filter by multiple slugs
It's now possible to filter by multiple slugs including the option to define wildcards with the delivery and management api.
The following two filters have been added:
by_slugs
Get stories by comma separated
full_slug
. You can also specify wildcards with*
. Examples:by_slugs=authors/john,authors/max
,by_slugs=authors/*,articles/*
excluding_slugs
Exclude stories specifying comma separated values of
full_slug
. You can also specify wildcards with*
. Examples:excluding_slugs=authors/john,authors/max
,excluding_slugs=authors/*
-
Check for empty values
It's now possible to check for empty or not empty values of content attributes in the delivery api with the new
is
operator.Examples:
filter_query[my_string][is]=empty
filter_query[my_string][is]=not_empty
filter_query[my_array][is]=empty_array
filter_query[my_array][is]=not_empty_array
-
Undo and redo
It's now possible to undo and redo content changes with the undo and redo buttons in the toolbar or with the keyboard shortcuts Ctrl+Z and Ctrl+Y.
-
Max length in Richtext
It's now possible to define a maximum length on the Richtext field. The "Paste with Markdown" functionality has also been improved and now pastes the text on the cursor position.
-
Hide content permission
It's now possible to set the permission "Hide content if unauthorized" and "Hide folders if unauthorized".
-
Multiple roles
It's now possible to assign multiple roles to a collaborator. This helps you to easily manage different access rights for specific folders and content items.
-
Maintenance mode
It's now possible to set a space into maintenance mode which allows admins to do changes on the content while blocking other users from editing.
With this change the management api delivers a 403 error instead of a 401 error when the user is not allowed to access a resource.
-
Warning when deleting items that are referenced
You are now getting a warning message when deleting content items that are referenced.
-
Automatically set workflow stage after publishing
Changes in: PermalinkIt's now possible to set a workflow stage that is automatically set after the user publishes a content item with the setting "Set following stage after published".
-
Show asset references
It's now possible to show asset references. Go to the asset browser, select any asset and click the button "References".
-
Hide empty option
It's now possible to hide the empty option in the select-box with the schema configuration "Hide empty option".
-
Current language in plugin
You can now get the currently selected language inside a field type plugin with
sbLanguage
. Example:const Fieldtype = { mixins: [window.Storyblok.plugin], template: `<div>Language: {{ sbLanguage }}</div>`, methods: { initWith() { return { plugin: 'example_plugin' } }, pluginCreated() { console.log(this.sbLanguage) } } }
-
Improved role management
The UI of the user role has been improved.
Improvements:
The fields permissions are now more user friendly with human readable names.
You can now hide whole tabs for specific roles.
Content item permissions have been extended to support unlimited items.
The role now opens in a modal instead of showing inline.