File tree 2 files changed +25
-2
lines changed
Catalog/Model/ResourceModel/Eav
CatalogWidget/Model/Rule/Condition
2 files changed +25
-2
lines changed Original file line number Diff line number Diff line change @@ -230,6 +230,16 @@ public function afterSave()
230
230
return parent ::afterSave ();
231
231
}
232
232
233
+ /**
234
+ * Is attribute enabled for flat indexing
235
+ *
236
+ * @return bool
237
+ */
238
+ public function isEnabledInFlat ()
239
+ {
240
+ return $ this ->_isEnabledInFlat ();
241
+ }
242
+
233
243
/**
234
244
* Is attribute enabled for flat indexing
235
245
*
Original file line number Diff line number Diff line change @@ -119,8 +119,21 @@ public function addToCollection($collection)
119
119
$ attribute = $ this ->getAttributeObject ();
120
120
121
121
if ($ collection ->isEnabledFlat ()) {
122
- $ alias = array_keys ($ collection ->getSelect ()->getPart ('from ' ))[0 ];
123
- $ this ->joinedAttributes [$ attribute ->getAttributeCode ()] = $ alias . '. ' . $ attribute ->getAttributeCode ();
122
+ if ($ attribute ->isEnabledInFlat ()) {
123
+ $ alias = array_keys ($ collection ->getSelect ()->getPart ('from ' ))[0 ];
124
+ $ this ->joinedAttributes [$ attribute ->getAttributeCode ()] = $ alias . '. ' . $ attribute ->getAttributeCode ();
125
+ } else {
126
+ $ alias = 'at_ ' . $ attribute ->getAttributeCode ();
127
+ if (!in_array ($ alias , array_keys ($ collection ->getSelect ()->getPart ('from ' )))) {
128
+ $ collection ->joinAttribute (
129
+ $ attribute ->getAttributeCode (),
130
+ 'catalog_product/ ' .$ attribute ->getAttributeCode (),
131
+ 'entity_id '
132
+ );
133
+ }
134
+
135
+ $ this ->joinedAttributes [$ attribute ->getAttributeCode ()] = $ alias . '.value ' ;
136
+ }
124
137
return $ this ;
125
138
}
126
139
You can’t perform that action at this time.
0 commit comments