商品ごと送料設定モジュール使用時、カートでエラーが出ます 投稿する
投稿者:Huckle Berry
投稿日時:2025-04-22 10:48:21
以前こちらで相談させていただきました。
https://saitodev.co/app/bulletin/board/topic/detail/284
続きとなります。
soycms(version: 3.20.3)
soyshop(2.12.16)
商品ごと配送料設定モジュール(バージョン0.9)
を使用しています。
ログインしていない状態で、カートページ(インストールディレクトリ/cart)にアクセスすると
下記エラーが出力されます。
ご対応方法教えていただけると幸いです。
https://saitodev.co/app/bulletin/board/topic/detail/284
続きとなります。
soycms(version: 3.20.3)
soyshop(2.12.16)
商品ごと配送料設定モジュール(バージョン0.9)
を使用しています。
ログインしていない状態で、カートページ(インストールディレクトリ/cart)にアクセスすると
下記エラーが出力されます。
Fatal error: Uncaught Error: Call to a member function getAddress() on null in /xxx/cms/soyshop/webapp/src/logic/cart/CartLogic.class.php:593 Stack trace:
#0 /xxx/cms/soyshop/webapp/src/module/plugins/delivery_each_product/soyshop.delivery.php(65): CartLogic->getAddress()
#1 /xxx/cms/soyshop/webapp/src/logic/plugin/extensions/soyshop.delivery.php(119): DeliveryEachProductModule->getPrice()
#2 /xxx/cms/soyshop/webapp/lib/soy2_build.min.php(8280): SOYShopDeliveryDeletageAction->run('soyshop.deliver...', 'delivery_each_p...', Object(DeliveryEachProductModule))
#3 /xxx/cms/soyshop/webapp/src/cart/_common/classes.php(135): SOY2Plugin::invoke('soyshop.deliver...', Array)
#4 /xxx/cms/soyshop/webapp/src/cart/_common/classes.php(108): MainCartPageBase->getDeliveryMethod(Object(CartLogic))
#5 /xxx/cms/soyshop/webapp/src/cart/_common/classes.php(43): MainCartPageBase->getInstalledModulesCount()
#6 /xxx/cms/soyshop/webapp/src/cart/_common/pages/Cart01Page.class.php(134): MainCartPageBase->__construct()
#7 /xxx/cms/soyshop/webapp/lib/soy2_build.min.php(4008): Cart01Page->__construct()
#8 /xxx/cms/soyshop/webapp/src/cart/_common/page.php(67): SOY2HTMLFactory::createInstance('Cart01Page')
#9 /xxx/cms/soyshop/webapp/src/cart/bootstrap/page.php(6): include_once('/home/keizo/rep...')
#10 /xxx/cms/soyshop/webapp/src/module/site/common/cart_application.php(17): include('/home/keizo/rep...')
#11 /xxx/path/.cache/cache_SOYShop_CartPage_bootstrap__pagea6175d88b529fcae9cc0ef98eca3b4fd.html.php(49): soyshop_cart_application('', Object(SOYShop_CartPage))
#12 /xxx/cms/soyshop/webapp/lib/soy2_build.min.php(4748): include('/home/keizo/rep...') #13 /xxx/cms/soyshop/webapp/src/base/site/SOYShopPageBase.class.php(73): HTMLPage->display()
#14 /xxx/cms/soyshop/webapp/src/base/site/pages/SOYShop_CartPage.class.php(61): SOYShopPageBase->display()
#15 /xxx/cms/soyshop/webapp/src/base/controller/cart.php(50): SOYShop_CartPage->display()
#16 /xxx/cms/soyshop/webapp/src/base/controller/app.php(43): execute_cart_application(Array)
#17 /xxx/cms/soyshop/webapp/src/base/SOYShopSiteController.class.php(44): do_application('cart', Array)
#18 /xxx/cms/soyshop/webapp/lib/soy2_build.min.php(235): SOYShopSiteController->execute()
#19 /xxx/path/index.php(8): SOY2PageController::run() #20 {main} thrown in /xxx/cms/soyshop/webapp/src/logic/cart/CartLogic.class.php on line 593
ご対応方法教えていただけると幸いです。
投稿者:齋藤毅
投稿日時:2025-04-22 10:53:29
の65行目の/xxx/cms/soyshop/webapp/src/module/plugins/delivery_each_product/soyshop.delivery.php
$address = $this->getCart()->getAddress();
を
if($this->getCart() instanceof CartLogic){
$address = $this->getCart()->getAddress();
$itemOrders = $this->getCart()->getItems();
}else{
return $price;
}
に変更したら如何でしょうか?
投稿者:Huckle Berry
投稿日時:2025-04-22 11:04:15
変更しましたが、
エラーに変化はありませんでした。
エラーに変化はありませんでした。
投稿者:齋藤毅
投稿日時:2025-04-22 11:53:30
の593行目の/xxx/cms/soyshop/webapp/src/logic/cart/CartLogic.class.php
$addrs = $this->customerInformation->getAddress($key);
を
if($this->customerInformation instanceof SOYShop_User){
$addrs = $this->customerInformation->getAddress($key);
}else{
$addrs = array();
}
にしたら如何でしょうか?
投稿者:Huckle Berry
投稿日時:2025-04-22 12:10:03
エラー解消されカートが表示されました!
ありがとうございます。
ありがとうございます。