Code
Explorer
You are a developer and looking for Shopware projects?
Apply Now!
getSortingType example
$options
->
sort
(
static
function
DPropertyGroupOptionEntity
$a
, PropertyGroupOptionEntity
$b
)
use
(
$group
)
{
$configuratorSettingA
=
$a
->
getConfiguratorSetting
(
)
;
$configuratorSettingB
=
$b
->
getConfiguratorSetting
(
)
;
if
(
$configuratorSettingA
!== null &&
$configuratorSettingB
!== null
&&
$configuratorSettingA
->
getPosition
(
)
!==
$configuratorSettingB
->
getPosition
(
)
)
{
return
$configuratorSettingA
->
getPosition
(
)
<=>
$configuratorSettingB
->
getPosition
(
)
;
}
if
(
$group
->
getSortingType
(
)
=== PropertyGroupDefinition::SORTING_TYPE_ALPHANUMERIC
)
{
return
strnatcmp
(
(string)
$a
->
getTranslation
(
'name'
)
,
(string)
$b
->
getTranslation
(
'name'
)
)
;
}
return
(
$a
->
getTranslation
(
'position'
)
??
$a
->
getPosition
(
)
?? 0
)
<=>
(
$b
->
getTranslation
(
'position'
)
??
$b
->
getPosition
(
)
?? 0
)
;
}
)
;
}
$collection
=
new
PropertyGroupCollection
(
$sorted
)
;
// check if product has an individual sorting configuration for property groups\