• Mostrando resultados da busca por {{ posts_busca["corrected"] }} {{termo_busca}}
  • {{post.title}}
  • Não foram encontrados resultados para {{ posts_busca["corrected"] }} {{termo_busca}}

PrestaShop: Como corrigir o erro 500 no admin

A página administrativa do seu PrestaShop está abrindo em branco ou com erro 500? Veja neste artigo como você pode corrigir este problema.

Ao utilizar o PrestaShop com a versão 7 ou superior do PHP, geralmente ao acessar o admin gera o erro 500 ou tela branca, mesmo sendo uma instalação nova.
Neste artigo vamos te mostrar o passo a passo de como você pode corrigir o acesso à área administrativa do PrestaShop.

Como corrigir o erro 500 no admin do PrestaShop

Primeiramente, é necessário habilitar o debug no PrestaShop.
Para isso, veja o artigo Como ativar o debug do PrestaShop.

Feito isso, a página mostrará algo como:

Fatal error: Declaration of AdminLoginControllerCore::viewAccess() must be compatible with AdminControllerCore::viewAccess($disable = false)

Agora edite o arquivo /controllers/admin/AdminLoginController.php.
Altere a seguinte linha:

public function viewAccess()
    {
        return true;
    }

Para:

public function viewAccess($disable = false)
    {
        return true;
    }

Após salvar a alteração, é possível que seja exibido o seguinte erro na página de admin do PrestaShop:

FatalErrorException in AdminDashboardController.php line 539:
Compile Error: Declaration of AdminDashboardController::setMedia() must be compatible with AdminControllerCore::setMedia($isNewTheme = false)

Este erro é gerado devido a uma incompatibilidade da função setMedia() com o PHP 7 e pode acontecer nos seguintes arquivos:
/controllers/admin/AdminDashboardController.php
/controllers/admin/AdminLoginController.php

Independente do arquivo, substitua toda a função setMedia() – geralmente aparece antes da linha 50 – para a seguinte:

public function setMedia($isNewTheme = false)
    {
        parent::setMedia($isNewTheme);

        $this->addJqueryUI('ui.datepicker');
        $this->addJS(array(
            _PS_JS_DIR_.'vendor/d3.v3.min.js',
            __PS_BASE_URI__.$this->admin_webpath.'/themes/'.$this->bo_theme.'/js/vendor/nv.d3.min.js',
            _PS_JS_DIR_.'/admin/dashboard.js',
        ));
        $this->addCSS(__PS_BASE_URI__.$this->admin_webpath.'/themes/'.$this->bo_theme.'/css/vendor/nv.d3.css');
    }

Feito isso, o admin do PrestaShop abrirá normalmente com o PHP 7.

Fonte: https://www.prestashop.com/forums/topic/713691-declaration-of-adminlogincontrollercoreviewaccess-must-be-compatible-with-admincontrollercore/

Este artigo foi útil pra você?