/** * @param \Shopware\Bundle\StoreFrontBundle\Struct\ShopContextInterface $context * @return \Doctrine\DBAL\Query\QueryBuilder */ private function getQuery(Struct\ShopContextInterface $context) { $query = $this->connection->createQueryBuilder(); $query->addSelect('variant.ordernumber as number')->addSelect($this->fieldHelper->getMediaFields())->addSelect($this->fieldHelper->getImageFields()); $this->fieldHelper->addImageTranslation($query, $context); $query->from('s_articles_img', 'image')->innerJoin('image', 's_media', 'media', 'image.media_id = media.id')->innerJoin('media', 's_media_album_settings', 'mediaSettings', 'mediaSettings.albumID = media.albumID')->innerJoin('image', 's_articles_img', 'childImage', 'childImage.parent_id = image.id')->innerJoin('image', 's_articles_details', 'variant', 'variant.id = childImage.article_detail_id')->leftJoin('image', 's_media_attributes', 'mediaAttribute', 'mediaAttribute.mediaID = image.media_id')->leftJoin('image', 's_articles_img_attributes', 'imageAttribute', 'imageAttribute.imageID = image.id'); return $query; }