EC-CUBE4.3以降では、services.yamlなどで指定したパラメータを取得しようとしても、ContainerInterfaceからgetParameterすることができません。
4.2以前のコードは次のようなエラーになります。
Attempted to call an undefined method named "getParameter" of class "Symfony\Component\DependencyInjection\Argument\ServiceLocator".
代わりにEccubeConfigというクラスから取得する方法をご紹介します。。
修正前(EC-CUBE4.2以前)
$templateDir = $this->container->getParameter('eccube_theme_front_dir');
修正後(EC-CUBE4.3以降)
/* @var $eccubeConfig EccubeConfig */
$eccubeConfig = $container->get(EccubeConfig::class);
$templateDir = $eccubeConfig->get('eccube_theme_front_dir');
EC-CUBEに関するお問い合わせ
[重要]現在公式にセキュリティサポートが切れていないPHPは8.1以上、MySQLは8.0以上で、対応しているEC-CUBEバージョンは4.2以上です。古いEC-CUBEを使っている方は適切なタイミングでバージョンアップをご検討ください。