![](/img/trans.png)
[英]Get Magento Mage_Core_Model_Store_Group from backend into frontend array
[英]Uncaught TypeError: Argument 1 passed to Mage_Core_Model_Store_Group::setWebsite() must be an instance of Mage_Core_Model_Website, null given
Magneto 1.9.3 移至具有 php 版本 7.0.23 的新服务器
我将我的 magento 网站服务器更新为新的 php 版本,现在是 7.0.23,在此之前它工作正常但现在出现问题
致命错误:未捕获的类型错误:传递给 Mage_Core_Model_Store_Group::setWebsite() 的参数 1 必须是 Mage_Core_Model_Website 的实例,给定 null,调用
我也尝试了 php 7 的 inchoo 补丁,但没有任何效果。 https://github.com/Inchoo/Inchoo_PHP7
我尝试了@cd001提到的上述方法
首先我更新了文件app/code/core/Mage/Core/Model/Store/Group.php
因为我刚刚替换了下面的行
public function setWebsite(Mage_Core_Model_Website $website)
与
public function setWebsite(Mage_Core_Model_Website $website = null)
然后我又犯了一个错误
Fatal error: Uncaught Error: Function name must be a string in
app\code\core\Mage\Core\Model\Layout.php:555 Stack trace: #0
app\code\core\Mage\Core\Controller\Varien\Action.php(390): Mage_Core_Model_Layout->getOutput() #1
app\code\core\Mage\Cms\Helper\Page.php(137): Mage_Core_Controller_Varien_Action->renderLayout() #2
app\code\core\Mage\Cms\Helper\Page.php(52): Mage_Cms_Helper_Page->_renderPage(Object(Mage_Cms_IndexController), 'home') #3
app\code\core\Mage\Cms\controllers\IndexController.php(45): Mage_Cms_Helper_Page->renderPage(Object(Mage_Cms_IndexController), 'home') #4
app\code\core\Mage\Core\Controller\Varien\Action.php(418): Mage_Cms_IndexController->indexAction() #5
app\code\core\Mage\Core\Controller\Varien\Router\Standard.php(254): Mage_Core_Controller_Varien_Action->dispatch('index') #6
app\code\core\Mage\Core\Model\Layout.php on line 555
为此,我更新了文件app/code/core/Mage/Core/Model/Layout.php
因为我替换了下面的行
$out .= $this->getBlock($callback[0])->$callback[1]();
与
$out .= $this->getBlock($callback[0])->{$callback[1]}();
一切正常...
看起来 Inchoo_PHP7 的当前版本仅适用于最新版本的 Magento。 阅读他们的发行说明https://github.com/Inchoo/Inchoo_PHP7/releases
我的旧版本 Inchoo_PHP7 包含您上面提到的文件的所有修复程序。 像这个……
<core>
<rewrite>
<layout>Inchoo_PHP7_Model_Layout</layout>
</rewrite>
</core>
使用 SQL
SET FOREIGN_KEY_CHECKS=0;
UPDATE `core_store` SET store_id = 0 WHERE code='admin';
UPDATE `core_store_group` SET group_id = 0 WHERE name='Default';
UPDATE `core_website` SET website_id = 0 WHERE code='admin';
UPDATE `customer_group` SET customer_group_id = 0 WHERE customer_group_code='NOT LOGGED IN';
SET FOREIGN_KEY_CHECKS=1;
和
清除缓存! (删除 magento/var/chache/ 中的所有内容)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.