🎉 Features
- Custom asset methods #4989 (thanks to @tobimori)
- Block and layout objects for the blocks and layout fields now allow access to the parent field object with
$block->field()
,$layout->field()
and$layoutColumn->field()
. #5053 - New
A::keyBy()
method to add keys to an array (thanks to @adamkiss) #5040
✨ Enhancements
- Pages and files sections: show most relevant search results with
flip
andsortBy
#5035 - Support shorts for the
youtube
embed JS helper #5059 - Changing page template: additional check to ensure only valid templates can be used #5060
A::fill
accepts a closure/callable (thanks to @adamkiss) #5036- Old editor and builder content gets automatically translated to blocks again #5051
- Corrected the menu label from "Logout" (noun) to "Log out" (verb). (thanks to @purplespider) #5047
- New
$helper.field.form(fields)
function to set up values for an empty form #5076
🐛 Fixes
- Fix updating file template #5049
Page::create()
doesn’t ignoreisDraft
prop any longer (thanks to @SeriousKen) #5042Pages::factory()
correctly considersisDraft
/draft
props as well as$draft
parameter (thanks to @SeriousKen) #5043- Fix
alt
attribute issue forasset()
helper #5066 - Fixes
->inline()
,->nl2br()
and->toTimestamp()
field methods when field is empty or not exists #5063 - Fixes
doNotTrack
argument inyoutube
embed JS helper #5059 - Options from API: field methods can be applied to text/value #5068
- Fix displaying conditional fields for empty
when
condition #4838 - Fixed some console errors when Panel received
Unauthenticated
response #4967 - Nested blocks can be copied/pasted #5074
Dir::index()
:$ignore
parameter works now #5010