Uh oh!
There was an error while loading. Please reload this page.
[5.x] Allow asset container order to be specified - #10177
Conversation
robdekort
commented
May 24, 2024
This works like a charm. Love it. |
There was a problem hiding this comment.
Thanks for the PR!
I've made a couple of tweaks:
- Moved the fallback order out of the
$orderproperty into theorder()method, so the property contains the "file" value. - When the
$orderproperty is set, it'll now include it in thefileDataarray so it'll get saved to the asset container's YAML file. - Removed the default value from being set in the
AssetContainersStoreso the$orderproperty isnullunless it's been explicitly set in the asset container file, to preventorder: 1being saved to every asset container.
jasonvarga
commented
May 28, 2024
Feels like a slippery slope. If asset containers can have custom orders, why not collections, taxonomies, globals, navs, forms, etc. Does using the nav builder to reorder your containers not work for you? You can already move the more important asset container to the top. Collections, taxonomies, etc all of them too. I assume once this is merged you will be doing an "Add order to everything else" PR? 😅 Also if you're going to apply this order to the nav and asset browser tabs, you may as well move it up a level and make the sort happen on AssetContainer::all(). Finally, there's no way to apply the order other than adding it to the yaml. You probably will want a field in the CP settings. Just brain dumping here and looking for feedback, don't just do it. 😃 |
ryanmitchell
commented
May 28, 2024
I think the issue with the nav builder in this case is yes you can change the sidebar order, but it doesn't change the tab order in assets, which this allows. I have no plans for another PR (honest!). Happy for you to close if you dont feel its of benefit... I mostly did this cause @robdekort wanted it. |
robdekort
commented
May 28, 2024
Just a thought. Perhaps it would make more sense if the CP nav order would be respected by the tabs? |
Ya we'd love this too, cuz we have a We have no issues with any of the other data because they don't really have "tabs" the same way Asset Containers do. |
ebeauchamps
commented
May 30, 2024
I am managing a site with tons of assets. I am uploading multiple assets, and only then I am calling some of them when I am creating my content. I need a way to choose the column on which the asset container will be sorted (most often, it's the Date column, descending order). I was indeed surprise that collections only can be sorted with a default order. Will this PR allow the user to choose the column and the sort order, by default? It's critical in my use case. Thanks. |
duncanmcclean
commented
May 30, 2024
No, this pull request only allows you to re-order the asset container tabs shown in this screenshot. |
ebeauchamps
commented
May 30, 2024
Thanks Jason. I'll take a look into "Ideas" then. |
ryanmitchell
commented
May 31, 2024
@jasonvarga I've moved the sort to :all() and added a CP field |
morhi
commented
Jun 5, 2024
As a workaround for this I just prefixed the container title with |
robdekort
commented
Jun 5, 2024
Been there, but it just killed me whenever I saw those digits in the CP 🤣 |
jasonvarga
commented
Jun 5, 2024
Set your container titles to jk definitely don't do that. |
duncanmcclean
commented
Jul 3, 2024
Thanks for this pull request! However, we've decided to remove the tabs from the Asset Manager, in favour of the links in the Control Panel nav. This means you'll be able to re-order & hide asset containers using the Nav Customizer, which saves us adding a new setting. Closing in favour of #10392. |
robdekort
commented
Jul 4, 2024
Cool! I like it. |


Since #4947 asset containers have been ordered by title, which is mostly a good thing.
However sometimes, you have an asset container that is low priority and rarely used, but then appears first, which isnt so good. A small quality of life improvement is to let the order by specified, while still falling back to title when its not.
This PR introduces an
orderkey to the yaml, which the CP then sorts by when outputting the list, egorder: 99Before:
After: