Просто для расширение вопросов может быть не 4 а чуть больше
Я думаю проблематично и долго будет подменять класс, так как сайт большой и эта функция очень много где используется.
и с Вашим примером что-то не ага...
это просто пример, не имеет никакого отношения к Вашим задачам.
// это просто пример, не имеет никакого отношения к Вашим задачам.
$query = Products::find()
->where(['products.status' => Products::STATUS_ACTIVE])
->with('category')
->joinWith([
'category' => function(ActiveQuery $query){
$query->from(['catalog' => Catalog::tableName()])->with('parent')->where(['catalog.status' => Catalog::STATUS_ACTIVE]);
}
]);