Ordering media | laravel-medialibrary | Spatie

 SPATIE

  Laravel Media Library
========================

spatie.be/open-source

  [Docs](https://spatie.be/docs)  [Laravel-medialibrary](https://spatie.be/docs/laravel-medialibrary/v6)  Advanced-usage  Ordering media

 Version   v11   v10   v9   v8   v7   v6   v5   v4   v3

 Other versions for crawler [v11](https://spatie.be/docs/laravel-medialibrary/v11) [v10](https://spatie.be/docs/laravel-medialibrary/v10) [v9](https://spatie.be/docs/laravel-medialibrary/v9) [v8](https://spatie.be/docs/laravel-medialibrary/v8) [v7](https://spatie.be/docs/laravel-medialibrary/v7) [v6](https://spatie.be/docs/laravel-medialibrary/v6) [v5](https://spatie.be/docs/laravel-medialibrary/v5) [v4](https://spatie.be/docs/laravel-medialibrary/v4) [v3](https://spatie.be/docs/laravel-medialibrary/v3)

- [ Introduction ](https://spatie.be/docs/laravel-medialibrary/v6/introduction)
- [ Postcardware ](https://spatie.be/docs/laravel-medialibrary/v6/postcardware)
- [ Requirements ](https://spatie.be/docs/laravel-medialibrary/v6/requirements)
- [ Installation &amp; setup ](https://spatie.be/docs/laravel-medialibrary/v6/installation-setup)
- [ Questions and issues ](https://spatie.be/docs/laravel-medialibrary/v6/questions-issues)
- [ Changelog ](https://spatie.be/docs/laravel-medialibrary/v6/changelog)
- [ About us ](https://spatie.be/docs/laravel-medialibrary/v6/about-us)

Basic usage
-----------

- [ Preparing your model ](https://spatie.be/docs/laravel-medialibrary/v6/basic-usage/preparing-your-model)
- [ Associating files ](https://spatie.be/docs/laravel-medialibrary/v6/basic-usage/associating-files)
- [ Retrieving media ](https://spatie.be/docs/laravel-medialibrary/v6/basic-usage/retrieving-media)
- [ Working with collections ](https://spatie.be/docs/laravel-medialibrary/v6/basic-usage/working-with-collections)

Converting images
-----------------

- [ Defining conversions ](https://spatie.be/docs/laravel-medialibrary/v6/converting-images/defining-conversions)
- [ Retrieving converted images ](https://spatie.be/docs/laravel-medialibrary/v6/converting-images/retrieving-converted-images)
- [ Optimizing converted images ](https://spatie.be/docs/laravel-medialibrary/v6/converting-images/optimizing-converted-images)
- [ Regenerating images ](https://spatie.be/docs/laravel-medialibrary/v6/converting-images/regenerating-images)

Converting other file types
---------------------------

- [ Using image generators ](https://spatie.be/docs/laravel-medialibrary/v6/converting-other-file-types/using-image-generators)
- [ Creating a custom image generator ](https://spatie.be/docs/laravel-medialibrary/v6/converting-other-file-types/creating-a-custom-image-generator)

Advanced usage
--------------

- [ Working with multiple filesystems ](https://spatie.be/docs/laravel-medialibrary/v6/advanced-usage/working-with-multiple-filesystems)
- [ Generating custom urls ](https://spatie.be/docs/laravel-medialibrary/v6/advanced-usage/generating-custom-urls)
- [ Storing media specific manipulations ](https://spatie.be/docs/laravel-medialibrary/v6/advanced-usage/storing-media-specific-manipulations)
- [ Using your own model ](https://spatie.be/docs/laravel-medialibrary/v6/advanced-usage/using-your-own-model)
- [ Using a custom directory structure ](https://spatie.be/docs/laravel-medialibrary/v6/advanced-usage/using-a-custom-directory-structure)
- [ Ordering media ](https://spatie.be/docs/laravel-medialibrary/v6/advanced-usage/ordering-media)
- [ Consuming events ](https://spatie.be/docs/laravel-medialibrary/v6/advanced-usage/consuming-events)
- [ Overriding default filesystem behavior ](https://spatie.be/docs/laravel-medialibrary/v6/advanced-usage/overriding-the-default-filesystem-behaviour)
- [ Responding with media ](https://spatie.be/docs/laravel-medialibrary/v6/advanced-usage/responding-with-media)
- [ Using custom properties ](https://spatie.be/docs/laravel-medialibrary/v6/advanced-usage/using-custom-properties)

API
---

- [ Adding files ](https://spatie.be/docs/laravel-medialibrary/v6/api/adding-files)
- [ Defining conversions ](https://spatie.be/docs/laravel-medialibrary/v6/api/defining-conversions)

      You are viewing the documentation for **an older version** of this package. You can check the version you are using with the following command:

 `                                    composer show spatie/laravel-medialibrary                                                                                                                                                                                                                                    `

Ordering media
==============

Laravel medialibrary has a built in feature to help you order the media in your project. By default all inserted media items are ordered by their creation order (from the newest to the oldest) using the `order_column` column of the `media` table.

You can easily reorder a list of media by calling ̀Media::setNewOrder`:

```
 /**
  * This function reorders the records: the record with the first id in the array
  * will get order 1, the record with the second it will get order 2, ...
  *
  * A starting order number can be optionally supplied (defaults to 1).
  *
  * @param array $ids
  * @param int $startOrder
  */
Media::setNewOrder([11, 2, 26]);
```

Of course you can also manually change the value of the `order_column`.

```
$media->order_column = 10;
$media->save();
```
