Read all the details in our blog post about this.
When using assets in rich text fields we couldn't detect them as "in use" in our media area filters.
But now instead we are doing that, so if you want to clear some space, deleting some unused assets from your media area, you are now good to go! The "in use" filter is now safer to use.
Last but not least, if you replace an asset we'll replace the URLs for you in all the rich text fields! This was sort of expected behaviour, but not implemented. Now it is and as a bonus we are doing it also on JSON fields, making also plugins that were saving assets in those fields more reliable.
We have just launched a highly voted feature request on Community: the possibility to set a default value for each locale, in the field settings, like so:
We took some time to improve our UI, mainly following the suggestions that came through the feature requests over at Community.
Thank you very much for sharing your ideas, they are really making DatoCMS better every day! We are very grateful for all your feedbacks.
Here comes the list of the most recently released.
When adding menu items in the left navigation you can now open an "External URL" in the same tab.
This allows you to create custom links to filtered models or specific pages of the CMS, customising even more the structure of a DatoCMS instance.
We have been adding community-contributed UI translations in the past few months.
So now that we have a few we've added this switch:
to let you manually pick your preferred translation, if you want to override the browser's default selection.
Minor improvement, but now we remember the size that you have picked for the sidebar, as you have requested on Community. Thank you ;)
If you have a big tree-like collection of records you will be pleased to know that you can now collapse the branches to improve navigation. Thank you for your suggestion!
A small but handy addition is the record ID in the sidebar. Previously was present only on the address bar of the browser, which made it invisible when opening records in modals. Showing it in the sidebar will make it always visible and hopefully more useful.
We've implemented and launched another little UX improvement coming from a suggestion on Community. It's about using a real deployment URL rather than a dummy address in the global SEO settings. Thank you!
Here's a quick list of some little improvements that we have released recently:
a record selection made on a filtered list is retained when the filter is cleared, making the filter-select actions more useful
added an integration with Google Cloud Storage for custom assets domain. Have a look at the docs
performance improvements in the UI and API (still going)
added a few supported locales in project settings
new documentation for responsiveImage
in Content Delivery API
a new filter for uploads with sizes selector (B, KB, MB)
little improvements for key-based navigation in the UI interface
a lot of little bug fixes!
We've also recently released updated versions of our plugins:
Ruby client v0.7.10
Gatsby source plugin v2.1.23
JS client v3.0.14
On the demos side instead we've launched a new example in React, pulling information directly from our Content Delivery API using three different GraphQL clients.
You can read more in the documentation or launch the demos directly from your Dashboard > New project > Demo project > Single-page app!
Starting from February 1st, 2020, it will no longer possible to directly create, duplicate, update or delete modular block items using the following endpoints:
POST /items
PUT /items/:id
POST /items/:id/duplicate
DELETE /items/:id
DELETE /items/
The only supported way to perform any operation on modular block items will be by updating a modular content field on the parent item.
For example, to create an item with two modular blocks inside its modular content field:
import { SiteClient, buildModularBlock } from 'datocms-client';const client = new SiteClient('YOUR_TOKEN');client.items.create({itemType: '111',content: [buildModularBlock(text: "Foo", itemType: '222'),buildModularBlock(text: "Bar", itemType: '222'),]})
This change is required to ensure atomic, reliable operations on content.