Como corrigir Widget Áreas quebradas no Astra Pro após migração no WordPress
O que é Astra widget áreas sumiram após migração?
As Astra widget áreas são as áreas de widget que o tema Astra e o complemento Astra Pro registram no WordPress: a barra lateral principal, as colunas de widget do rodapé e quaisquer áreas extras criadas pelo módulo Custom Layouts do Astra Pro, do tipo Sidebar/Widget. Cada área tem um ID de sidebar único, e o WordPress guarda em qual área cada widget está usando esse ID dentro da opção sidebars_widgets do banco de dados.
Após uma migração, esse vínculo se quebra quando a sidebar deixa de ser registrada no site de destino. Se o Astra Pro está inativo, se o módulo Custom Layouts foi desligado, ou se o Custom Layout que criava a área não veio junto na migração, o ID daquela sidebar deixa de existir ao carregar o tema. O WordPress então não tem onde encaixar os widgets e os move para o bloco de Widgets Inativos, deixando a área visível no front-end vazia.
Como identificar
- Os widgets do rodapé ou da barra lateral aparecem em Aparência -> Widgets dentro do bloco ‘Widgets Inativos’ em vez da área onde estavam antes da migração.
- Uma área de widget criada pelo Astra Pro (Custom Layout do tipo Sidebar/Widget) simplesmente não aparece mais na tela de Widgets do site de destino.
- No front-end, a sidebar ou as colunas do rodapé do Astra ficam totalmente vazias, mesmo com os widgets ainda existindo no painel.
- Em Aparência -> Widgets surge o aviso ‘A área de widgets foi removida’ ou os widgets ficam listados sob um cabeçalho cinza sem área correspondente.
- A tela de Widgets só mostra a barra lateral principal e o rodapé padrão, sem as áreas extras que o Astra Pro registrava no site de origem.
Como prevenir
- Antes de migrar, anote quais plugins ficam ativos no site de origem e ative o Astra Pro e o módulo Custom Layouts logo após mover o site, para as áreas de widget serem registradas de novo.
- Use uma ferramenta de migração que leve o banco de dados inteiro, incluindo os posts do tipo astra-advanced-hook que guardam os Custom Layouts do Astra Pro.
- Mantenha o mesmo tema ativo na origem e no destino, evitando trocar o Astra por outro tema durante a migração para não perder os IDs das sidebars.
- Depois de cada migração, abra Aparência -> Widgets e confira o bloco Widgets Inativos antes de divulgar o site, recolocando o que tiver caído fora das áreas.
Causa
- O plugin Astra Pro (Astra Pro Addon) não foi ativado ou a licença não foi revalidada no destino, então as áreas de widget que ele registrava deixam de existir e os widgets caem em Widgets Inativos.
- O módulo Custom Layouts do Astra Pro está desligado em Aparência -> Astra Options, e como as áreas de widget extras são criadas por esse módulo, nenhuma sidebar com o ID antigo é registrada ao carregar o tema.
- O Custom Layout do tipo Sidebar/Widget, armazenado como post do tipo astra-advanced-hook, não veio na migração (export parcial ou banco incompleto), então o ID daquela área nunca é registrado no destino.
- A opção sidebars_widgets do banco continua apontando para um ID de sidebar do site antigo que não bate com o ID registrado no destino, fazendo o WordPress tratar os widgets como órfãos.
- A migração trocou o tema ativo ou trouxe um child theme sem o functions.php que registrava a área via register_sidebar, então o ID some e a área não é montada.
Como resolver
- Confirme que o Astra Pro está ativo no destino: A maioria das áreas de widget extras é registrada pelo Astra Pro. Se ele estiver inativo, todas somem e os widgets caem em Widgets Inativos. Ative o Astra Pro Addon e revalide a licença para que as áreas voltem a ser registradas.
Painel WP -> Plugins -> Plugins Instalados Localize 'Astra Pro' (Astra Pro Addon) e clique em Ativar Painel WP -> Aparência -> Astra Options -> reative a licença se solicitado - Reative o módulo Custom Layouts do Astra Pro: As áreas de widget personalizadas do Astra Pro são criadas pelo módulo Custom Layouts. Se ele estiver desligado, nenhuma sidebar com o ID antigo é registrada. Garanta que o módulo está ativo antes de procurar pelos widgets.
Painel WP -> Aparência -> Astra Options Localize o módulo 'Custom Layouts' e ative-o Salve e recarregue Aparência -> Widgets - Restaure os widgets a partir de Widgets Inativos: Com as áreas registradas de novo, abra a tela de Widgets. Os widgets órfãos ficam no bloco Widgets Inativos com o conteúdo intacto. Arraste cada um de volta para a área correta do Astra, sem precisar recriar nada.
Painel WP -> Aparência -> Widgets Abra o bloco 'Widgets Inativos' na parte de baixo da tela Arraste cada widget de volta para a sidebar ou coluna do rodapé do Astra - Verifique se o Custom Layout veio na migração: Se a área extra continua sem aparecer, confira se o Custom Layout do tipo Sidebar/Widget existe no destino. Esses layouts são posts do tipo astra-advanced-hook; se a lista estiver vazia, eles não foram migrados e precisam ser recriados ou reimportados.
Painel WP -> Aparência -> Astra Options -> Custom Layouts Confira se o layout do tipo Sidebar/Widget está listado e Publicado Se faltar, reimporte o conteúdo do site de origem ou recrie o layout - Limpe o cache do site de destino: Plugins de cache e o cache do servidor podem servir a versão antiga das áreas vazias depois do conserto. Limpe todos os caches e recarregue o front-end sem cache para confirmar que as áreas voltaram a exibir os widgets.
Painel WP -> limpe o cache do plugin de cache ativo (ex.: WP Rocket -> Limpar cache) Limpe o cache do servidor ou da CDN, se houver Abra o site em aba anônima e confira a sidebar e o rodapé
<?php
// Diagnóstico: lista as widget areas (sidebars) REGISTRADAS no destino
// e os widgets ÓRFÃOS que sobraram apontando para IDs inexistentes.
add_action( 'admin_init', 'full_astra_widget_areas_audit' );
function full_astra_widget_areas_audit() {
if ( ! current_user_can( 'manage_options' ) || ! isset( $_GET['full_audit'] ) ) {
return;
}
global $wp_registered_sidebars;
$registradas = array_keys( $wp_registered_sidebars );
$mapa = get_option( 'sidebars_widgets', array() );
error_log( 'Astra widget areas REGISTRADAS: ' . implode( ', ', $registradas ) );
foreach ( $mapa as $sidebar_id => $widgets ) {
if ( 'wp_inactive_widgets' === $sidebar_id || 'array_version' === $sidebar_id ) {
continue;
}
if ( ! in_array( $sidebar_id, $registradas, true ) && ! empty( $widgets ) ) {
error_log( 'ORFA: sidebar "' . $sidebar_id . '" tem widgets mas NAO esta registrada.' );
}
}
}














