WordPress MU-Plugins: O que são + Plugins úteis e obrigatórios para desenvolvedores da Web WP
Publicados: 2022-02-24Você precisa de recursos para ativar automaticamente e permanecer ativado em seu site? Então considere adicioná-los ao WordPress como um mu-plugin … até mesmo crie o seu próprio!
Neste tutorial, exploraremos:
- O que são plug-ins MU?
- Uma Breve História dos Plugins MU
- Recursos do plug-in MU
- Como alterar o diretório de plug-ins de uso obrigatório padrão
- Quando não usar plug-ins MU
- Como criar e instalar plug-ins MU no WordPress
- Tutoriais do plug-in MU
- Ocultar item de administração do WordPress para todos os usuários (exceto você)
- Ocultar o menu superior do WordPress e criar um botão de logout personalizado
- Adicionar CSS ao back-end do WordPress
- Remova todos os estilos do conteúdo do WordPress
- Ocultar Elementor no administrador do WordPress
- Faça do Beehive Analytics sua página inicial do painel do WordPress
Vamos pular direto…
O que são plugins MU do WordPress?

Conforme descrito na documentação do WordPress.org…
Plugins obrigatórios (também conhecidos como mu-plugins) são plugins instalados em um diretório especial dentro da pasta de conteúdo e que são ativados automaticamente em todos os sites da instalação.
Portanto, um plug-in obrigatório ('mu-plugin') é como qualquer outro plug-in do WordPress, exceto pelo fato de que, quando carregado no diretório mu-plugins
da pasta wp-content
(ou seja, /wp-content/mu-plugins
ele é ativado automaticamente e permanece ativado em sua instalação do WordPress.
Uma Breve História dos Plugins MU
Nos primeiros dias (por volta da versão 3.0), o WordPress introduziu um recurso chamado Multisite (originalmente chamado WordPress MU) para permitir que vários sites compartilhem e sejam gerenciados por uma instalação do WordPress, WordPress Multisite (ou WPMU como ficou conhecido) também introduziu o diretório 'mu-plugins', oferecendo aos administradores do site uma maneira fácil de ativar plugins por padrão em todos os blogs em uma rede multisite.
Embora os plug-ins MU originalmente se referissem a 'plugins multiusuário', eles foram renomeados para plug-ins 'obrigatórios'. Instalados no diretório 'mu-plugins' de uma instalação WPMU, os mu-plugins agora podem ser usados onde você quiser que um ou mais plugins sejam ativados automaticamente e permaneçam ativados, seja em uma ou várias instalações do WordPress.
Recursos do plug-in MU
Um plugin de uso obrigatório ('mu-plugin') é um plugin que, por padrão, é ativado automaticamente e permanece ativado quando carregado no diretório mu-plugins
da pasta wp-content
(ou seja, /wp-content/mu-plugins
Uma vez carregado neste diretório, o WordPress saberá automaticamente que este plugin deve ser usado na instalação.
Os plugins obrigatórios são carregados antes dos plugins normais e não aparecem na lista padrão de plugins na página Plugins do wp-admin. Eles, no entanto, aparecem em uma seção especial de uso obrigatório no menu de lista da tela do plug-in.

Notas:
- Um mu-plugin não pode ser desativado ou desativado, exceto removendo o arquivo de plug-in do diretório obrigatório de sua instalação do WordPress.
- Enquanto o plugin permanecer no diretório, o WordPress sempre o executará. Assim, uma vez que um mu-plugin foi adicionado ao diretório mu-plugins, ele permanece “sempre ativo” até que seja removido dessa pasta.
- Plugins obrigatórios não são atualizados automaticamente e o WordPress não o notifica sobre novas versões. Isso significa que os mu-plugins devem ser mantidos atualizados manualmente (a menos que sejam instalados e mantidos por um serviço externo).
- Os plugins de uso obrigatório podem ser ativados simplesmente carregando o arquivo no diretório mu-plugins, sem precisar fazer login.
- Os plugins MU são carregados pelo PHP, em ordem alfabética, antes dos plugins normais. Isso significa que os hooks de API adicionados em um mu-plugin serão aplicados a todos os outros plugins, mesmo que executem funções hooked no namespace global.
- Além disso, lembre-se de que os mu-plugins funcionarão em instalações WordPress simples e multisite, mas se aplicarão a todos os sites em uma rede multisite.
Como alterar o diretório de plug-ins de uso obrigatório padrão
Para alterar o diretório padrão manualmente, você precisará definir duas constantes ( WPMU_PLUGIN_DIR
e WPMU_PLUGIN_URL
) em wp-config.php
:
define('WPMU_PLUGIN_DIR', '/full/path/to/new/directory');
define('WPMU_PLUGIN_URL', 'https://URL/to/new/directory');
Notas:
- Se você definir as constantes acima e o caminho não for válido, o WordPress não redefinirá as constantes e seus mu-plugins não serão carregados. Portanto, a menos que você tenha um motivo para alterar o diretório mu-plugins padrão, recomendamos manter os valores padrão para
WPMU_PLUGIN_DIR
eWPMU_PLUGIN_URL
. - Se alterar o diretório padrão, essas duas constantes devem ser definidas no arquivo
wp-config.php
antes da linha onde o arquivowp-settings.php
está incluído, para que você não possa usar constantes úteis (por exemploWP_CONTENT_DIR
).
Quando você NÃO deve usar plug-ins MU?
Plugins obrigatórios permitem adicionar recursos ao núcleo do WordPress que não são instalados por padrão, mas que os usuários podem precisar.
No entanto, conforme declarado na documentação do WordPress…
Apesar de ser adequado para muitos casos especiais, o sistema mu-plugins nem sempre é o ideal e tem várias desvantagens que o tornam inadequado em determinadas circunstâncias.
A documentação passa a listar uma série de advertências importantes a serem lembradas:
- Os plug-ins no diretório de uso obrigatório não aparecerão nas notificações de atualização nem mostrarão seu status de atualização na página de plug-ins, portanto, você é responsável por aprender e realizar atualizações por conta própria.
- Ganchos de ativação não são executados em plugins adicionados à pasta de plugins obrigatórios. Esses ganchos são usados por muitos plug-ins para executar o código de instalação que configura o plug-in inicialmente e/ou o código de desinstalação que é limpo quando o plug-in é excluído. Plugins que dependem desses ganchos podem não funcionar na pasta mu-plugins e, como tal, todos os plugins devem ser cuidadosamente testados especificamente no diretório mu-plugins antes de serem implantados em um site ativo.
Nota: O WordPress só procura por arquivos PHP dentro do diretório mu-plugins e (ao contrário de plugins normais) não por arquivos em subdiretórios. Você pode querer criar um arquivo proxy PHP loader dentro do diretório mu-plugins:
<?php // mu-plugins/load.php requer WPMU_PLUGIN_DIR.'/my-plugin/my-plugin.php';
Mantenha as coisas simples com Mu-Plugins
Mu-plugins só devem ser usados para fazer “uma” ação simples. Chamar código complexo o tempo todo pode levar a conflitos com outros códigos ou plugins e envolver mu-plugins como fontes suspeitas quando a solução de conflitos pode realmente complicar as coisas.
Plugins MU não podem ser armazenados em subdiretórios
Além disso, lembre-se de que, ao contrário dos plugins comuns, você não pode armazenar um mu-plugin em um subdiretório do diretório mu-plugins. Isso significa que você não poderá classificar seus mu-plugins usando pastas por padrão.
Você pode contornar isso criando um mu-plugin para fazer com que o WordPress inclua automaticamente mu-plugins armazenados em subdiretórios, mas como eles não são encontrados pelo WordPress por padrão, eles não aparecerão na lista de plugins obrigatórios, então você ganhará não será capaz de ver qual plugin obrigatório está instalado em subdiretórios sem olhar para o próprio diretório mu-plugins.
Como criar e instalar plug-ins MU no WordPress
Adicionar um plug-in obrigatório ao seu site requer três etapas:
- Crie um diretório
mu-plugins
(pasta) no diretóriowp-content
- Crie um arquivo php mu-plugin
- Carregue/instale o arquivo em seu site via FTP
Criamos um excelente tutorial passo a passo que mostra como instalar plugins MU no WordPress em nossa seção de documentação.
Siga o tutorial acima para passar por todo o processo ou clique em um link abaixo para ir para uma das etapas acima:
- Crie um diretório mu-plugin
- Criar um mu-plugin
- Carregar/instalar um arquivo mu-plugin
Adicione estes plugins úteis e obrigatórios à sua caixa de ferramentas do WordPress
Aviso: é altamente recomendável realizar um backup completo do seu site antes de alterar as coisas ou adicionar código aos arquivos do servidor, caso algo dê errado. O Snapshot facilita muito o backup e a restauração de sites do WordPress!
Se você é um desenvolvedor WordPress ou gerencia sites para sua equipe ou seus clientes, aqui estão alguns mu-plugins úteis que você pode criar para expandir seu conjunto de truques:
1. Ocultar a barra de administração do WordPress para todos os usuários (exceto você)
Se você gerencia sites para sua equipe ou seus clientes, ou é o desenvolvedor chefe de sua empresa, convém fazer personalizações do WordPress que somente você pode ver ou ocultar botões para todos os usuários além de você para garantir que as pessoas não cliquem onde não deveriam.
Embora você possa personalizar as ferramentas de administração usando um plug-in como o Branda, também pode fazer isso facilmente usando o código.
Para este exemplo, digamos que você seja o único superadministrador de um site e queira ocultar a barra de ferramentas de todos os usuários, exceto você.
Basta criar um mu-plugin e adicionar o seguinte código e estilizá-lo usando CSS:
<?php add_action( 'admin_footer', 'hideitems' ); function hideitems() { if (! is_super_admin()) { echo "<estilo> #wpadminbar { exibição: nenhum !importante; } </style> "; } }
2. Oculte o menu superior do WordPress e crie um botão de logout personalizado
Aqui está outra personalização de administração do WordPress que você pode fazer para seus clientes.

Digamos que você queira ocultar ou remover a barra superior nas áreas de administração dos sites de seus clientes porque acha inconveniente exibi-la lá ou acha que dar aos clientes que não sabem muito sobre o WordPress acesso aos menus de modificação de conteúdo pode levar a eles cometendo erros inadvertidos.
Por exemplo, se você criar sites usando o Elementor, seus clientes poderão acessar as opções de personalização de temas do Elementor diretamente na barra de menus superior.

Continuando com o Elementor para este exemplo, você pode decidir ocultar isso para evitar problemas e deixar o caminho de personalização do tema dentro da área de administração em Modelos > Construtor de Temas. Ou você pode decidir removê-lo completamente, porque mesmo que você desative as opções da barra de administração, alguns usuários ainda podem não entender o que é e por que ele é exibido no front-end de seus sites.
Ocultar a barra superior é muito fácil de fazer usando um plugin como o Branda… basta ir à área de administração > barra de administração e desmarcar a visibilidade da barra de ferramentas para alguns usuários.
O problema é que, se você desabilitar completamente essa barra, os usuários não poderão sair do administrador. Isso não apenas cria um problema de segurança, mas também não é conveniente se você quiser trocar de usuário.
Felizmente, existe uma solução: basta adicionar este código como um mu-plugin para criar um botão de logout:
<?php add_action( 'admin_menu', função () { add_menu_page( 'Sair', 'Sair', 'leitura', 'wp_custom_logout_menu', '__retorna falso', 'dashicons-marcador', 1 // Aqui use 1 para colocar o menu na parte superior ou PHP_MAX_INT para colocá-lo na parte inferior, ); } ); add_action( 'admin_init', função () { if ( isset( $_GET['page'] ) && $_GET['page'] == 'wp_custom_logout_menu') { wp_redirect( wp_logout_url() ); saída(); } } );
Isso redirecionará seu usuário para a página de login após o processo de logout.
3. Adicione CSS ao back-end do WordPress
Como você pode adicionar CSS ao back-end do WordPress?
Mais uma vez, você pode usar um plugin como Branda, mas também pode criar um mu-plugin e colar o seguinte código em seu arquivo:
<?php add_action( 'admin_footer', 'my_admin_css' ); function my_admin_css() { echo '<estilo> /*Coloque seu código CSS aqui*/ </style>'; }
É isso...fácil e muito prático!
4. Remova todos os estilos do conteúdo do WordPress
Suponha que você se depare com um site onde todo o estilo de conteúdo é definido por HTML dentro do conteúdo do WordPress.
Isso é meio chato, já que ninguém quer realmente modificar o estilo de cada página quando você pode fazer isso facilmente usando CSS.
Então, aqui está uma solução para isso.
Crie um mu-plugin e adicione o seguinte código:
add_filter( 'o conteúdo', função ( $conteúdo ) { // Excluir todos os estilos embutidos. return preg_replace( '/ style=("|\')(.*?)("|\')/', '', $content ); } );
Experimente!
5. Ocultar Elementor no administrador do WordPress
O Elementor é um dos construtores de páginas populares e amplamente utilizados para WordPress. Se você é um desenvolvedor web ou webmaster, pode estar usando o Elementor para criar e gerenciar um site e seu conteúdo.
Por mais fácil que seja o Elementor, ele ainda requer algum conhecimento para usá-lo e um erro inadvertido de um usuário pode tornar o site impossível de navegar.
Portanto, se você é o único que gerencia o site e os usuários não precisam criar páginas no WordPress com muita frequência, convém ocultar as opções do Elementor de outros usuários de back-end. Certificar-se de que não haja modificação no back-end sem o seu conhecimento lhe dará tranquilidade e seus clientes ou usuários de back-end também poderão gostar de ter uma interface mais simples para trabalhar.
Esta dica funciona bem nos seguintes tipos de sites:
- sites de comércio eletrônico
- Sites com tipos de posts personalizados
- Sites usados principalmente como blog para publicação de artigos.
Como dito anteriormente, se os usuários finais precisarem criar páginas do WordPress regularmente, isso pode não funcionar para você, porque eles precisarão do Elementor para isso.
Antes de criar um mu-plugin, primeiro você deve ocultar o Elementor no menu. Você pode ocultar o botão Elementor nas páginas do WordPress.
1. Ocultar Elementor no menu
Instale o Branda e depois:
- Vá para Área de administração > Barra de administração e oculte-a para seus usuários finais. Dessa forma, eles não poderão acessar o construtor Elementor a partir daí.
- Vá para Painel> Menu Admin> Personalizar e, em seguida, oculte o menu de administração do Elementor para todos, exceto você (dica: use funções de usuário para isso, pois é mais fácil do que fazê-lo para todos os usuários).
- Lembre-se também de ocultar o menu “Modelos” (esta é provavelmente a coisa mais importante a ser ocultada).
Nota: Recomendamos que apenas uma pessoa possa acessar os modelos, especialmente se os usar para construir seu tema e usar CSS para controlar cada item do design do seu site. Isso evita que outros usuários adicionem CSS em outro lugar (por exemplo, em construtores, personalizador de temas, folhas de estilo, etc.)… e sem comentar corretamente ao adicionar código, por exemplo
/* Personalização do cabeçalho */ .cabeçalho{ margem superior: 10px; } /* END personalização do cabeçalho */
2. Oculte o botão Elementor nas páginas do WordPress
A maneira mais fácil de criar ou modificar uma página com o Elementor é simplesmente acessar Páginas > Criar e clicar no botão Elementor para alterá-lo.
Há também uma maneira de ocultar esse botão se você não quiser que os usuários acessem o Elementor.
Para fazer isso, você precisa personalizar as funções do usuário. Se você for o único administrador do site, poderá ocultar os botões para todos, exceto para você.
Nota: Você pode usar a etapa anterior para ocultar apenas os modelos do Elementor (para manter seu tema seguro), mas ainda deixar o acesso no Elementor para criar e modificar páginas. Isso, no entanto, pode ser arriscado, pois quando os usuários estão em uma página do Elementor, eles podem navegar para outros elementos, como o cabeçalho ou rodapé, ou acessar as configurações globais do Elementor que afetarão o site.
Depois de ter feito o acima, a única coisa que resta a fazer é criar um mu-plugin e colar o seguinte código para ocultar o botão:
<?php add_action( 'admin_footer', 'hideitems' ); function hideitems() { if (! is_super_admin()) { ?> <estilo> #elementor-switch-mode { Mostrar nenhum; } </style> <?php } }
Aproveitar!
6. Faça do Beehive Analytics sua página inicial do painel do WordPress
Se você não é um grande fã da página de administração do WordPress (mesmo que possa personalizar seus widgets e ocultar painéis) ou fazer com que seus usuários vejam essa tela toda vez que fizerem login no painel do WordPress…

Por que não mostrar a eles uma bela página de destino do administrador com informações úteis como esta?

Novamente, você pode usar Branda para personalizar o painel de administração e o menu esquerdo ou ocultar/mostrar menus dependendo da função do usuário. Isso é ótimo se você for o único administrador e quiser exibir os menus mínimos necessários para usuários finais ou adicionar CSS personalizado.
Se, no entanto, tudo o que você deseja fazer é redirecionar os usuários da página de administração do WordPress para uma página mais útil, como a página de análise do Beehive, basta criar um mu-plugin e adicionar este código:
<?php function wpmudev_redirect_page() { global $pagenow; if ( $pagenow == 'index.php' && ! wp_doing_ajax() && is_plugin_active( 'google-analytics-async/google-analytics-async.php') ) { wp_redirect( admin_url( '/admin.php?page=beehive-google-analytics' ) ); saída; } } add_action( 'admin_init', 'wpmudev_redirect_page');
Aproveitar!
Faça o WordPress voar com plug-ins MU
Espero que agora você saiba tudo sobre plugins obrigatórios: o que são, quando e quando não usá-los e como e onde instalá-los em sites WordPress.
Confira nossa documentação de mu-plugins, tente criar e instalar alguns plugins obrigatórios de sua preferência e, se tiver algum problema ou precisar de ajuda especializada, entre em contato com nossa equipe de suporte... tenho!
Contribuintes
Este artigo foi escrito em colaboração com:

Antoine – Incenso. Sou apaixonado por cultura web e soluções digitais. Trabalho nesta área há 11 anos. Sempre em busca das melhores soluções para ajudar meus clientes a superar desafios digitais e expandir seus negócios online. Minha visão de sucesso digital: obter uma estratégia global, aplicá-la com precisão detalhada e sempre melhorar.
***
Nota: Não aceitamos artigos de fontes externas. Os membros do WPMU DEV, no entanto, podem contribuir com ideias e sugestões para tutoriais e artigos em nosso blog através do Blog XChange.