Como obtenho a versão Magento no Magento2.x (por exemplo 2.0.0
)?
No Magento1.x, eu poderia fazê-lo com
Mage::getVersion()
Então, qual é o equivalente no Magento2.x?
fonte
Como obtenho a versão Magento no Magento2.x (por exemplo 2.0.0
)?
No Magento1.x, eu poderia fazê-lo com
Mage::getVersion()
Então, qual é o equivalente no Magento2.x?
Até Magento versão 2.0.7, o número da versão era mantido na AppInterface::VERSION
constante.
Com o lançamento do Magento 2.1, a constante foi removida.
Até a versão 2.0.7, se você verificar o arquivo de rodapé adminhtml em que a versão é mostrada
Tinha referência à \Magento\Framework\AppInterface::VERSION
constante.
Mas desde que o Magento 2.1 libera, o arquivo de rodapé agora usa o \Magento\Backend\Block\Page\Footer::getMagentoVersion()
que, por sua vez, chama o \Magento\Framework\App\ProductMetadata::getVersion()
.
Anteriormente, o ProductMetadata::getVersion()
usado para retornar o valor da constante \Magento\Framework\AppInterface::VERSION
, mas agora analisa o composer.json
, bem como composer.lock
e retorna a versão Magento apropriada
Portanto, não importa qual versão você esteja no 2.0.x ou 2.1.x, se você usar o \Magento\Framework\App\ProductMetadata::getVersion()
método, sempre obterá a versão apropriada do Magento.
Conclusão:
Magento 1:
Mage::getVersion() //will return the magento version
Magento 2:
//Updated to use object manager
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$productMetadata = $objectManager->get('Magento\Framework\App\ProductMetadataInterface');
$version = $productMetadata->getVersion(); //will return the magento version
composer.json
pode conter uma restrição de versão como "^ 2.1" que não indica a versão exata, então o Magento (também) está verificando ocomposer.lock
arquivo para ver qual versão exata está atualmente instalada.Você pode usar isso nas versões 2.0.x:
Para a versão 2.1:
Maneira 1, usando DI:
Caminho 2, usando o ObjectManager diretamente:
fonte
As soluções mencionadas não são aplicáveis a partir do Magento 2.1 (a
\Magento\Framework\AppInterface::VERSION
constante foi removida)A nova maneira de obter a versão é recuperá-la da Instância de metadados do produto (lê a versão do compositer.json):
(melhor injetar metadados do produto no construtor como
\Magento\Framework\App\ProductMetadataInterface
)fonte
Além das outras respostas, você pode obter a versão principal (por exemplo 2.1) acessando
/magento_version
no site Magento 2.fonte
Caso alguém precise encontrá-lo manualmente. A versão básica do módulo Magento está localizada neste arquivo do compositor:
Também como sugerido acima, para fazer o código abaixo funcionar:
\Magento\Framework\App\ProductMetadata
agora requer instância deComposerJsonFinder
seja passada no momento da instanciação.Um exemplo que encontrei em
dev/tests/integration/testsuite/Magento/Framework/Composer/ComposerInformationTest.php
:O código acima é apenas para fins informativos. Você tem que cavar mais para fazê-lo funcionar.
fonte
Você pode executar o comando abaixo para obter a versão magento:
fonte
Para usuários do tipo unix
Não é necessário escrever nenhum código PHP para isso. Como o Magento 2 utiliza o compositor, tudo fica mais fácil. Você pode fazer isso de duas maneiras:
Verifique o compositer.json e procure uma chave chamada version. Se você é como eu e gosta de usar o terminal, pode fazer algo como na raiz do projeto.
Isso retorna a versão do M2, se você deseja verificar se é uma versão comunitária ou corporativa, basta fazer o seguinte:
fonte
basta verificar o arquivo composer.json na raiz do magento2, você encontrará um texto como este
fonte
composer.json
pode conter uma restrição de versão como "^ 2.1" que não indica a versão exata. Você deve verificar ocomposer.lock
arquivo para ver qual versão exata está atualmente instalada.Tente o seguinte:
Para a versão 2.1:
fonte
Aqui estão algumas maneiras de verificar a versão do Magento
Método # 1: Use a verificação de código PHP
Verifique a versão Magento 1 Verifique a versão Magento 2Você pode usar isso nas versões 2.0.x:
Para a versão 2.1:
A primeira maneira, usando DI:
A segunda maneira, usando o ObjectManager diretamente:
Método # 2: Verifique a versão do Magento via linha de comando
Você pode executar o comando abaixo para obter a versão Magento 2:
Na verdade, como o Magento 2 utilizou seu compositor, você não precisa escrever nenhum código PHP para isso. Em vez disso, existem duas opções para encontrar a versão Magento 2:
Primeiro, tente o compositor.json e procure a palavra-chave version. Se você preferir usar o terminal, pode adicionar algo na raiz do projeto.
Outra maneira de verificar o clima da versão Magento 2 é a edição comunitária ou empresarial, por favor escreva o seguinte
Use o serviço web para verificar https://www.mageplaza.com/check-magento-version/
fonte
Por favor, tente esta ferramenta online, ela funciona para as versões do magento1.xe magento2.x https://www.talktojobs.com/check-magento-version/
fonte