系统学习magento二次开发,推荐小册:《Magento中文全栈二次开发 》
本小册面向Magento2以上版本,书代码及示例兼容magento2.0-2.4版本。涵盖了magento前端开发,后端开发,magento2主题,magento2重写,magento2 layout,magento2控制器,magento2 block等相关内容,带领您成为magento开发技术专家。
介绍
基本上,Magento 2生产模式是所有Magento 2网站最有效的模式,因此该网站经过全面优化,运行平稳,提升了最佳的客户体验。主要是生产模式的使用非常安全可靠,原因是如果任何不适当的用户尝试访问 pub/static 文件夹并主动对其进行更改,那么只会在重复版本中进行更改,并且文件将在下一次静态部署期间被覆盖。
编码步骤
有两种方法可以检查Magento 2是否在生产模式下运行。
方法1:(不推荐的方法)
$om = \Magento\Framework\App\ObjectManager::getInstance(); /** @return \Magento\Framework\App\State */ $state = $om->get('Magento\Framework\App\State'); /** @var bool $isDeveloperMode */ $isDeveloperMode = \Magento\Framework\App\State::MODE_DEVELOPER === $state->getMode();
注意: 根据Magento标准,不建议使用对象管理器,我们共享的方式只是为了知识目的。
方法2:Magento编码标准明智
protected $_appState; public function __construct( \Magento\Framework\App\State $appState ) { $this->_appState = $appState; } public function doSomething() { switch ( $this->_appState->getMode() ) { case \Magento\Framework\App\State::MODE_DEFAULT: // Action for default mode break; case \Magento\Framework\App\State::MODE_PRODUCTION: // Action for production mode break; case \Magento\Framework\App\State::MODE_DEVELOPER: // Action for developer mode break; } }
您可以使用上面给出的任何方法并实现检查Magento 2是否在生产模式下运行。实施后,您将能够成功了解Magento 2商店的模式。