🎉 USE O CUPOM DESCONTO.FULL | 20% OFF acima de R$ 50,00

Como corrigir o painel frontend que não carrega para instrutores no Tutor LMS

Time Full Services Time Full Services
Tipo Outros erros
Nome do erro Painel frontend não carrega para instrutores no Tutor LMS EN: Tutor LMS instructor frontend dashboard not loading
Severidade Grave
Descrição Quando o painel instrutor não carrega no Tutor LMS, o frontend dashboard em /dashboard abre em branco, sem cabeçalho e rodapé ou retorna 404. A causa quase sempre é o tema sobrescrever o dashboard.php sem a condição de get_header, a página do painel não estar atribuída ou permalink fora de Post Name.

O que é o dashboard instrutor do Tutor LMS?

O painel instrutor do Tutor LMS é o frontend dashboard que o instrutor acessa em SeuSite/dashboard, gerado pelo shortcode tutor_dashboard na página atribuída em Tutor LMS -> Settings -> General. É ali que o instrutor vê My Courses, Withdrawals, Quiz Attempts, Analytics e o botão Create a New Course. Quando o painel instrutor não carrega, essa página abre totalmente em branco, aparece sem o cabeçalho e o rodapé do tema, retorna 404 ou trava no spinner. O front-end público do site segue no ar, porque o problema está na página do dashboard, no template do tema ou nas rotas, não no servidor.

Como identificar

  • A página em SeuSite/dashboard abre totalmente em branco, sem o menu lateral do instrutor (My Courses, Withdrawals, Analytics).
  • O painel aparece quebrado, sem o cabeçalho e o rodapé do tema, com a frase Broken Dashboard relatada após instalar Yoast SEO ou Rank Math.
  • Mensagem 404 Not Found ao abrir a URL do dashboard do instrutor.
  • O painel fica preso no spinner de carregando ou acusa nonce inválido ao salvar dados do instrutor.
  • O console do navegador (F12) mostra erro de JavaScript ou um 404 em arquivo .js do Tutor LMS.
Antes de começar: Faça backup do dashboard.php do tema antes de editá-lo e trabalhe apenas no tema-filho, para que a condição de header e footer não se perca na próxima atualização do tema.

Como prevenir

  • Mantenha o permalink em Post Name e a página do Dashboard sempre atribuída em Tutor LMS -> Settings -> General
  • Use tema-filho e aplique a condição de get_header e get_footer no dashboard.php desde a primeira customização
  • Exclua os scripts do Tutor LMS da compressão hard de JS e HTML desde a instalação do plugin de cache
  • Atualize Tutor LMS, tema e plugins SEO juntos e teste o painel do instrutor em ambiente de staging

Causa

  • Tema que sobrescreve o template tutor/dashboard.php e chama get_header e get_footer sem a condição de short code e da constante OTLMS_VERSION, o que quebra o painel ao ativar Yoast SEO ou Rank Math (documentado pela Themeum).
  • Página do Dashboard não atribuída em Tutor LMS -> Settings -> General, fazendo o shortcode tutor_dashboard apontar para lugar nenhum.
  • Permalink fora de Post Name em Configurações -> Links Permanentes, o que invalida a rota /dashboard e gera 404.
  • Página do Dashboard definida como página inicial do site, uso que a Themeum proíbe para a Dashboard e a Course Archive.
  • Plugin de cache com compressão hard de JavaScript e HTML, que corrompe os scripts do painel e gera nonce inválido, ou recurso Protect do Jetpack bloqueando as requisições do dashboard.
  • Instrutor com a conta ainda pendente de aprovação, sem a role de instrutor aplicada, o que entrega um painel sem o menu de criação de curso.

Como resolver

  1. Confirme a página do Dashboard e o permalink: verifique se a página do painel está atribuída e se o permalink está em Post Name, que é a rota exigida pelo Tutor LMS. Salve os links permanentes para regerar as rotas. A página do Dashboard nunca pode ser a página inicial do site.
    Tutor LMS -> Settings -> General -> Dashboard Page (atribua a página com o shortcode tutor_dashboard)
    Configurações -> Links Permanentes -> Nome do post -> Salvar alterações
  2. Cheque se o tema sobrescreve o dashboard.php: muitos temas trazem uma cópia do template do painel. Procure o arquivo do dashboard dentro da pasta tutor do tema e abra para edição. Se o arquivo existir, é ele que precisa da condição do próximo passo. Faça isso sempre no tema-filho.
    wp-content/themes/SEU-TEMA/tutor/dashboard.php
  3. Aplique a condição de header e footer recomendada pela Themeum: no dashboard.php do tema, troque as chamadas diretas de get_header e get_footer pelas versões condicionais abaixo. Isso impede que Yoast SEO ou Rank Math quebrem o painel quando o tema renderiza o dashboard como short code.
    $is_by_short_code = isset($is_shortcode) && $is_shortcode===true;
    if(!$is_by_short_code && !defined( 'OTLMS_VERSION' )) { get_header(); }
    if(!$is_by_short_code && !defined( 'OTLMS_VERSION' )) { get_footer(); }
  4. Desligue a compressão hard de JS e HTML no cache: no plugin de cache, desative a compressão hard de JavaScript e HTML ou exclua os scripts do Tutor LMS dessas otimizações. Se usa Jetpack, desative o recurso Protect. Depois limpe todo o cache e o cache do navegador.
    Excluir da minificação: /wp-content/plugins/tutor/assets/js/tutor.min.js
    Excluir da minificação: /wp-content/plugins/tutor/assets/js/tutor-front.min.js
  5. Valide a role do instrutor: confirme em Tutor LMS -> Instructors que a conta está aprovada. Um instrutor pendente recebe um painel sem o menu de criação de curso. Aprove a conta e peça para o instrutor recarregar o painel já logado.
    Tutor LMS -> Instructors -> selecione o usuário -> Approve
PHP
// wp-content/themes/SEU-TEMA/tutor/dashboard.php
// Condição da Themeum: só chama header/footer do tema quando NÃO é short code do Tutor LMS
$is_by_short_code = isset($is_shortcode) && $is_shortcode === true;

if ( ! $is_by_short_code && ! defined( 'OTLMS_VERSION' ) ) {
    get_header();
}

// ... markup do painel do instrutor ...

if ( ! $is_by_short_code && ! defined( 'OTLMS_VERSION' ) ) {
    get_footer();
}

Perguntas frequentes

Por que o painel do instrutor abre em branco só depois que instalei o Yoast ou o Rank Math?
Porque o tema sobrescreve o dashboard.php e chama get_header e get_footer sem a condição que a Themeum recomenda. Com Yoast ou Rank Math ativo, isso quebra o painel. A correção é envolver as duas chamadas na condição de short code e da constante OTLMS_VERSION no dashboard.php do tema-filho.
O site abre normal mas o painel do instrutor em /dashboard dá 404. Por quê?
Porque o Tutor LMS exige permalink em Post Name e a página do Dashboard atribuída em Settings -> General. Fora disso, a rota /dashboard não resolve e retorna 404. Ajuste o permalink, salve os links permanentes e confirme a página do painel.
Posso usar a página do Dashboard como página inicial do site?
Não. A documentação do Tutor LMS proíbe usar a Dashboard ou a Course Archive como página inicial. Quando isso acontece, o painel do instrutor carrega quebrado ou não exibe o conteúdo certo. Mantenha o painel em uma página própria, como /dashboard.
Onde fica o template do painel que preciso editar?
Procure o arquivo dashboard.php dentro de uma pasta tutor no diretório do tema, em wp-content/themes/SEU-TEMA/tutor/dashboard.php. Se ele existir, o tema está sobrescrevendo o painel e é ali que entra a condição de get_header e get_footer. Sempre edite no tema-filho.
O painel fica preso no carregando ou acusa nonce inválido. O que faço?
Isso costuma vir da compressão hard de JavaScript e HTML do plugin de cache, que corrompe os scripts do painel. A Themeum recomenda manter a compressão de JS e HTML desligada. Exclua os scripts do Tutor LMS dessas otimizações, desative o Protect do Jetpack e limpe o cache.
Um instrutor vê um painel diferente do outro. Por quê?
O instrutor com conta pendente recebe um painel sem o menu de criação de curso, pois a role de instrutor ainda não foi aplicada. Aprove a conta em Tutor LMS -> Instructors e peça para ele recarregar o painel já logado para ver My Courses, Withdrawals e o botão Create a New Course.
Como vejo qual é o erro exato do painel do instrutor?
Pressione F12 no navegador, abra a aba Console e recarregue a página do painel. O console mostra se é erro de nonce, um arquivo .js que retorna 404 ou um conflito. Teste também com as extensões do navegador desativadas para descartar interferência externa.

Seja PRO.

Tenha acesso a snippets de código premium — PHP, JavaScript, CSS e HTML prontos para usar em seus projetos.

Conhecer o plano Pro →

Uma nova era para o WordPress.

A FULL Services redefine o CMS com uma arquitetura modular que transforma o WordPress em um motor de crescimento digital. 

Painéis personalizados

Um novo nível de controle para o WordPress. Acompanhe métricas, automações e evolução do seu site em um único painel visual.

A força por trás de grandes marcas

Para agências, estúdios e profissionais independentes que desejam oferecer soluções de alto nível com sua própria marca.

Componentes

Hero Sections

30 componentes

Seções de CTA

14 componentes

Login

14 componentes

Blog

14 componentes

Cabeçalhos

24 componentes

Seções de FAQ

53 componentes

Cadastro

53 componentes

Blog individual

53 componentes

Rodapés

28 componentes

Seções de contato

27 componentes

Seções de preços

27 componentes

Faixas

27 componentes

Portfólio

16 componentes

Seções de equipe

12 componentes

Números

12 componentes

Logotipos

12 componentes