カートは見ていませんが、商品詳細はここが原因だと思います。
ProductController、ProductRepositoryのこの書き方だとEventSubscriberでNULLになるはずです。
※ProductController
public function detail(Application $app, Request $request, $id)
{
$BaseInfo = $app['eccube.repository.base_info']->get();
if ($BaseInfo->getNostockHidden() === Constant::ENABLED) {
$app['orm.em']->getFilters()->enable('nostock_hidden');
}
/* @var $Product \Eccube\Entity\Product */
$Product = $app['eccube.repository.product']->get($id); // ここのgetメソッド
}
※ProductRepository
/**
* get Product.
*
* @param integer $productId
* @return \Eccube\Entity\Product
*
* @throws NotFoundHttpException
*/
public function get($productId)
{
// Product
try {
$qb = $this->createQueryBuilder('p');
$qb->addSelect(array('pc', 'cc1', 'cc2', 'pi', 'ps'))
->innerJoin('p.ProductClasses', 'pc')
->leftJoin('pc.ClassCategory1', 'cc1')
->leftJoin('pc.ClassCategory2', 'cc2')
->leftJoin('p.ProductImage', 'pi')
->innerJoin('pc.ProductStock', 'ps')
->where('p.id = :id')
->orderBy('cc1.rank', 'DESC')
->addOrderBy('cc2.rank', 'DESC');
$product = $qb
->getQuery()
->setParameters(array(
'id' => $productId,
))
->getSingleResult();
} catch (NoResultException $e) {
throw new NotFoundHttpException();
}
return $product;
}
----------------
EC-CUBEカスタマイズ・高速化・脆弱性対策・SEO ご相談ください。
2系・3系から4系へのバージョンアップ実績豊富