public function parse($value, &$position = null)
foreach ($placeholders as & $placeholder) {
if ( ! ($expectedType & $fieldType)) {
Нужно смотреть код и делать отладку
метод afterGet это просто костыль
Что еще за отдельная реализация?
public function afterGet
Правильно это как раз и сделано для оптимизации, потому что при работе с большой коллекцией не нужно загружать всю информацию. Для этого существует addAttributeToSelect который добавляет информацию атрибута в результирующую выборку.
Потому что они не знают про то как работает EAV и про addAttributeToSelect
catalog_product_entity_varchar