Властивість sortOrder для плагінів у Magento 2 визначає, коли їх слід викликати (до, після чи навколо методу), за умови, якщо для одного й того ж методу  налаштовано більше одного плагіна.

<config>
    <type name="{ObservedType}">
      <plugin name="{pluginName}" type="{PluginClassName}" sortOrder="1" disabled="false" />
    </type>
</config>

Правила визначення пріоритетів такі:

Перед виконанням оригінального методу Magento буде виконувати before плагіни від найменшого до найбільшого значення у sortOrder.

Частина коду плагіну around до виклику оригінального методу (callable)  теж виконуватиметься від найменшого до найбільшого значення, а після виклику методу навпаки - від найбільшого до найменшого.

Плагін after викликається від найбільшого до найменшого після виклику оригінального методу.

Приклад:

Нехай є три класи плагіна (Plugin10, Plugin20, Plugin30). На один і той же метод кожен клас плагіна має before, after і around методи. sortOrder для кожного має вигляд:

Plugin10 - 10
Plugin20 - 20
Plugin30 - 30

Плагіни і оригінальний метод викличуться у такому порядку:

1 Plugin10::beforeMothod
2    Plugin10::aroundMethod // перша частину коду, яка іде до виклику callable
3        Plugin20::beforeMothod
4            Plugin20::aroundMethod // до виклику callable

5                Plugin30::beforeMothod
6                    Plugin30::aroundMethod // до виклику callable
7                        Class:method
8                    Plugin30::aroundMethod // після виклику callable
9               Plugin30::afterMethod
10            Plugin20::aroundMethod // після виклику callable
11        Plugin20::afterMothod
12    Plugin10::aroundMethod // після виклику callable
13 Plugin10::afterMothod