Antecedentes Se procurar por comparações de plugins SEO vai encontrar maioritariamente comparações entre os dois plugins mais utilizados: Rank Math e Yoast . Isso acontece porque em muitas dessas comparações o interesse em colocar um link de afiliado após uma avaliação positiva em que a crítica é geralmente evitada por razões óbvias.
Depois de experimentar a sua versão gratuita durante algum tempo, em meados de 2021 comecei a utilizar o Rank Math Pro e tenho estado a analisar algumas das suas novas funcionalidades e alterações. Agora decidi desinstalá-lo e voltar ao The Seo Framework , principalmente por três razões que explico por ordem de importância e que são apreciações puramente pessoais.
1. já não é leve É um facto, tem vindo a engordar. Embora o Rank Math seja muito completo e não seja um dos plugins mais pesados (o Yoast é ainda mais pesado), porque se pode desativar os módulos que não se quer usar, ele tem vindo a engordar. E isso não é bom. A velocidade de carregamento continua a ser um dos principais factores de posicionamento para a maioria dos motores de busca.
A ideia de um plug-in do tipo "canivete suíço" que lhe poupará a utilização de outros plug-ins pode ser apelativa no início, até descobrir que mesmo utilizando cinco, seis ou mais plug-ins leves para fazer todas as coisas que o Rank Math faz, consome menos recursos.
2. já não é barato Embora, para algumas pessoas, isto seja relativo, o Rank Math PRO aumentou o seu atrativo preço mínimo de 59 dólares para 95,88 dólares. Trata-se de um aumento de 36,88 dólares de uma só vez. Um preço final quase próximo do custo médio de um alojamento modesto. Embora as razões apresentadas para o aumento possam fazer sentido em termos comerciais, considero que este aumento poderia ter sido progressivo para os clientes de longa data e é demasiado elevado para a sua licença básica, normalmente utilizada por bloguistas para sítios pessoais com rendimentos modestos ou nulos.
Em sua defesa, devo dizer que, quando me pediram os motivos da anulação, propuseram-me manter o preço que paguei nos últimos três anos com o reembolso da diferença, mas decidi avançar com a mudança porque, mais cedo ou mais tarde, o aumento chegaria e porque estava mais preocupado com o ponto 1.
3. A insistência na IA generativa Embora as novas opções que adicionaram recentemente fossem relativamente razoáveis e úteis, parecem agora empenhados em incorporar histórias pagas baseadas em IA para gerar conteúdos que não me interessam e outras funcionalidades bastante dispensáveis.
Até introduziram IA para as respostas automáticas iniciais aos seus bilhetes de apoio. Algo que considero bastante mau para um serviço pago. É apenas uma automatização desajeitada com hiperligações para a documentação deles para "filtrar" as consultas que atrasa o tempo de resposta final.
Tudo o que um plug-in de SEO faz pode ser feito sem ele. Não há absolutamente nada que um plugin de SEO faça que não possa ser feito por si próprio com um pouco de código. Diria mesmo que é possível obter uma boa classificação sem utilizar qualquer plug-in de SEO. Já estou há muitos anos sem os utilizar e nunca sofri quaisquer quebras visíveis no meu modesto mas necessário posicionamento.
Estes plugins devem ser vistos como uma ajuda, uma ferramenta de apoio. Nunca como uma solução ou uma poção milagrosa.
A primeira pergunta que faço sempre a mim próprio antes de instalar um plugin é: posso fazer o que estou a anunciar sem utilizar um plugin? Se a resposta for sim, experimento-o.
Se preferir não complicar a sua vida ou não se atrever, pode utilizar um plugin. Mas tente escolher plugins leves que não sacrifiquem o tempo de carregamento.
Advertência: nada aqui deve ser interpretado como soluções gerais ou universais, porque se limitam às condições específicas do meu ambiente. Terá de estudar o seu.
Migrar do Rank Math para o SEO Framework O Seo Framework é um plugin gratuito criado por Sybre Waaijer que tem algumas versões pagas com extensões premium e outras melhorias. Os seus criadores afirmam que é "o único plugin de SEO que segue à letra as diretrizes do Google para webmasters".
Ao não incluir os assobios e os apitos, é muito mais leve, porque se concentra nas funções básicas necessárias e nota-se imediatamente uma melhoria notável no desempenho tanto da área de administração, da página, como no peso da BD. Com a alteração, passou de 623Mb para 448Mb.
O processo de migração é explicado aqui.
*A ordem lógica para a migração é instalar primeiro o SEO Framework SEM desativar OU desinstalar o Rank Math, porque vamos precisar não só de importar os seus dados, mas também de obter dados de outras funções, se as estiver a utilizar.
*Antes de instalar o The SEO Framework, aconselho-o a descarregar uma cópia do seu robots.txt , caso tenha definições personalizadas, uma vez que o plugin cria um novo e substitui-o. E se está à procura de como definir breadcrumbs com o The SEO Framework, está aqui .
Pode instalá-lo da forma tradicional a partir da gestão de plugins do WP ou descarregando e instalando o instalador "Extension Manager" a partir da sua página . De qualquer forma, para importar os dados do Rank Math, precisamos de uma extensão chamada Transport , que é fornecida no download. Ambos os métodos são explicados na sua documentação .
Quando executamos o Transport, seleccionamos o Rank Math, seleccionamos o que queremos importar e executamo-lo. O processo é rápido. Este blogue já tem milhares de entradas e o processo foi concluído em menos de um minuto.
O próximo passo lógico seria configurar o plugin e desinstalar o "Extension Manager" e livrar-se do Rank Math, mas primeiro vamos voltar ao Rank Math para descarregar vários ficheiros de que vamos precisar.
As primeiras cópias que guardaremos serão os ficheiros de configuração completos, caso nos arrependamos ou queiramos recriá-los mais tarde para recuperar algo específico.
Fá-lo-emos a partir do Rank Math SEO/ Status e das ferramentas.
Alternativas para as funções Rank Math O Rank Math tem uma série de funções que o SEO Framework não tem. Em princípio, isso é bom, mas quando o plugin tem um bug, o bug vai se espalhar para todas essas funções.
Estas funções serão perdidas quando desinstaladas, pelo que nos certificaremos de que as recuperamos de outras formas.
A vantagem é que, mesmo que as tenhamos separadas, teremos mais controlo sobre elas e será também mais fácil resolver problemas se as tivermos isoladas.
Redireccionamentos O Rank Math permite-lhe configurar redireccionamentos 301 automáticos (e outros) quando altera um URL ou elimina um post ou página. Se tivermos utilizado esta ferramenta, iremos ao plugin e descarregaremos uma cópia da lista dos redireccionamentos que fizemos.
A partir do menu Rank Math SEO/ Redireccionamentos/Exportação , acedemos à ferramenta"Importar e exportar ". Ao clicar aí(1 ), encontrará este ecrã.
As opções(2 ) e(3 ) serão descarregadas apenas para termos duas cópias nesses formatos e podermos recuperar os redireccionamentos manualmente (se não forem muitos) ou o lote inteiro com a ferramenta de importação do plugin"Redirection ", caso algo corra mal ou se optarmos por utilizar este plugin em vez de os colocar manualmente no .htaccess.
A opção mais segura agora é a(4 ), porque isto irá escrever todos os redireccionamentos que fez do Rank Math para o seu .htaccess. Depois de ter clicado em"Sincronizar com o .htaccess ", navegue até ao .htaccess e verifique se os redireccionamentos foram adicionados, eles devem aparecer mesmo no fim do ficheiro, como mostra a imagem abaixo.
Índice A atualização 1.0.104 do Rank Math, na sua versão gratuita de 19 de dezembro de 2022 , acrescentou um novo bloco de índice. Se tivermos adicionado tabelas utilizando este bloco do Rank Math, quando o desactivarmos, seremos confrontados com este texto:
"O seu site não inclui suporte para o bloco rank-math/toc. Pode deixar este bloco intacto, converter o seu conteúdo num bloco HTML personalizado ou removê-lo completamente".
A boa notícia é que , se a deixar como está , as tabelas continuarão a ser apresentadas, a má notícia é que, se tentar editá-las ou removê-las, não poderá voltar a adicioná-las. Por isso, vamos deixá-las como estão por enquanto e procurar um substituto.
A opção mais fácil e rápida é utilizar um dos plug-ins mais leves e eficientes que já experimentei para tabelas de conteúdos: Simple TOC , uma vez que não adiciona JavaScript ou CSS, a menos que o menu de acordeão esteja ativado.
Índice sem plugin
Se não quiser utilizar um plugin e preferir complicar um pouco a sua vida, pode tentar estes dois métodos(1 ) e(2 ). Experimentei as duas formas e decidi optar pelo plugin porque alguns erros convenceram-me de que o plugin era a forma mais rápida, eficaz e segura.
Se não tiver muitas placas, só terá de as substituir uma a uma à mão.
No entanto, se tiver muitos (como foi o meu caso), pode localizá-los facilmente. Para isso, vá ao phpMyAdmin, selecione a sua base de dados e, no separador "Procurar", em palavras ou valores, escreva "rank-math/toc-block"(1 ), selecione "a frase exacta como substring"(2 ) e a tabela "wp-posts"(3 ) e clique em "Continuar"(4 ).
Isto mostrar-lhe-á uma lista de todos os posts onde adicionou um bloco de índice Rank Math, a data, o título do post ou da página e até o slug do url.
Agora é altura de os substituir. No meu caso, substituí-os por um bloco reutilizável que criei com o GenerateBlocks Pro , colocando o bloco TOC simples dentro de um contentor que estilizei para corresponder ao aspeto das tabelas que tinha introduzido com o Rank Math. Pode ver a formatação na tabela no início desta publicação.
Desta forma, posso inseri-los automaticamente onde quiser e exibi-los, ou não, em função dos títulos de cada publicação, graças ao GeneratePress Elements , pois isto é algo que o plugin Simple TOC não nos permite fazer.
Sobre o bloco de índice nativo no WordPress Este bloco foi adicionado como um bloco experimental no Gutenberg 13.3.0 em maio de 2022 e alguns blogues disseram na altura que seria integrado no WP 6.1, mas não era verdade. A questão é que alguém pensou que tinha sido removido da etiqueta "experimental" mas não apareceu na altura porque o WordPress 6.1 integrou da versão 13.1 para a 14.1 e a tabela de conteúdos faz parte do Gutenberg 14.4.0. Até à data, ainda não há data. Por isso, vamos ter de continuar à espera que seja estável e integrado como parte do núcleo.
No outro dia, perguntei ao repositório se havia um roteiro para o efeito e Birgit Pauli-Haack respondeu-me o seguinte .
"O bloco do índice ainda é um projeto em curso. Ainda não existem prazos disponíveis para que o bloco saia da sua fase experimental".
Se quiseres experimentá-lo , de momento só o podes fazer instalando o plugin de teste do Gutenberg.
Imagem SEO O Rank Math tem um módulo chamado SEO de imagens . Embora nem todos os que trabalham em posicionamento dêem demasiado valor a este aspeto, para um blogue como este, com um grande volume de vinhetas, é interessante posicionar as imagens porque geram uma quantidade não negligenciável de tráfego orgânico que costuma ser relativamente estável.
Na verdade, é um pouco como um placebo , porque o que faz é injetar o título do post no ALT do html resultante.
Ou seja, é aplicado dinamicamente apenas quando o conteúdo é apresentado, o conteúdo guardado não é modificado. Não preenche os campos ALT em falta no WordPress, mas é melhor do que nada enquanto estiver a preencher os que ficou de fora.
Isto também pode ser feito com algumas funções e filtros que adicionamos ao functions.php do nosso modelo.
Snippet para adicionar ALT (título da entrada) a todas as imagens
//Establecer el título de la entrada como texto alternativo de imagenes en post y páginas. Si existe Alt no hará nada
function add_alt_tags( $content ) {
preg_match_all( '/<img (.*?)\/>/', $content, $images );
if ( ! is_null( $images ) ) {
foreach ( $images[1] as $index => $value ) {
if ( preg_match( '/alt=""/', $value ) ) {
$new_img = str_replace(
'alt=""',
'alt="' . esc_attr( get_the_title() ) . ' '. $index . '"',
$images[0][$index] );
$content = str_replace(
$images[0][$index],
$new_img,
$content );
}
}
}
return $content;
}
add_filter( 'the_content', 'add_alt_tags', 99999 );
Snippet para adicionar ALT (título da entrada) à imagem em destaque
//Establecer el título de la entrada como ALT de la imagen destacada
function lwp_37481_featured_alt_text($metadata, $object_id, $meta_key, $single) {
if(isset($meta_key) && $meta_key == '_wp_attachment_image_alt'
&& get_post_thumbnail_id() == $object_id
&& $single === true
){
$original_value = get_post_meta(
$object_id, '_wp_attachment_image_alt', false
);
if(empty($original_value)){
return get_the_title();
}
}
return $metadata;
}
add_filter('get_post_metadata', 'lwp_37481_featured_alt_text', 10, 4);
Editor visual de etiquetas e categorias Outra opção curiosa e interessante se posicionar tags (algo que os SEO's normalmente descartam e até aconselham a não as indexar) que pode dar alguma alegria se a trabalhar bem é que o Rank Math adicionou o editor TinyMCE às categorias e tags para poder adicionar imagens e dar um formato mais atrativo ao texto, como se fosse um post.
Ao desinstalar o Rank Math, o editor desaparece, mas pode ser recuperado, também com um par de funções a colocar em functions.php.
Atenção: para as categorias, o código funciona como deveria, mas para as etiquetas não oculta o antigo campo de descrição e não adiciona a legenda, pelo que, se não for adicionado ou se for adicionado como um único parágrafo por baixo da imagem, funciona.
Aqui está o resultado. À esquerda, o editor de etiquetas nativo simples e, à direita, o TinyMCE depois de adicionar o snippet.
Fragmento para etiquetas :
/* Añade editor TinyMCE a etiquetas */
if( is_admin() ) {
// Eliminar filtrado de HTML
remove_filter( 'pre_term_description', 'wp_filter_kses' );
remove_filter( 'term_description', 'wp_kses_data' );
// Agregar nuevo campo de descripcion
add_filter('edit_tag_form_fields', 'filter_wordpress_tag_editor');
function filter_wordpress_tag_editor($tag) {
?>
<table class="form-table">
<tr class="form-field">
<th scope="row" valign="top"><label for="description"><?php _ex('Description', 'Taxonomy Description'); ?></label></th>
<td>
<?php
$settings = array('wpautop' => true, 'media_buttons' => true, 'quicktags' => true, 'textarea_rows' => '15', 'textarea_name' => 'description' );
wp_editor(html_entity_decode($tag->description , ENT_QUOTES, 'UTF-8'), 'description1', $settings);
?>
<br />
<span class="description"><?php _e('The description is not prominent by default; however, some themes may show it.'); ?></span>
</td>
</tr>
</table>
<?php
}
// Oculta el campo antiguo de descripción
add_action('admin_head', 'remove_default_tag_description');
function remove_default_tag_description()
{
global $current_screen;
if ( $current_screen->id == 'edit-tag' )
{
?>
<script type="text/javascript">
jQuery(function($) {
$('textarea#description').closest('tr.form-field').remove();
});
</script>
<?php
}
}
}
E o das categorias :
/* Añadir editor TinyMCE a categorías */
if( is_admin() ) {
// Eliminar filtrado de HTML
remove_filter( 'pre_term_description', 'wp_filter_kses' );
remove_filter( 'term_description', 'wp_kses_data' );
// Agregar nuevo campo de descripcion
add_filter('edit_category_form_fields', 'filter_wordpress_category_editor');
function filter_wordpress_category_editor($tag) {
?>
<table class="form-table">
<tr class="form-field">
<th scope="row" valign="top"><label for="description"><?php _ex('Description', 'Taxonomy Description'); ?></label></th>
<td>
<?php
$settings = array('wpautop' => true, 'media_buttons' => true, 'quicktags' => true, 'textarea_rows' => '15', 'textarea_name' => 'description' );
wp_editor(html_entity_decode($tag->description , ENT_QUOTES, 'UTF-8'), 'description1', $settings);
?>
<br />
<span class="description"><?php _e('The description is not prominent by default; however, some themes may show it.'); ?></span>
</td>
</tr>
</table>
<?php
}
// Oculta el campo antiguo de descripción
add_action('admin_head', 'remove_default_category_description');
function remove_default_category_description()
{
global $current_screen;
if ( $current_screen->id == 'edit-category' )
{
?>
<script type="text/javascript">
jQuery(function($) {
$('textarea#description').closest('tr.form-field').remove();
});
</script>
<?php
}
}
}
*Lamento não me lembrar onde encontrei estes excertos para dar crédito aos seus autores, mas se os localizar, fá-lo-ei.
IndexNow Índice integrado do Rank Math Agora na versão 3.0.5 em janeiro de 2022.
Como é que o IndexNow funciona?
O protocolo funciona permitindo que os sítios Web enviem URLs para a API IndexNow uma vez, e esta é partilhada com todos os motores de pesquisa participantes. Assim, só tem de submeter as alterações e os URLs do seu sítio uma vez, e todos os motores de pesquisa participantes estarão a par das últimas alterações ao seu sítio, para rastrear, indexar e refletir essas alterações mais cedo nos resultados da pesquisa.
Embora a utilização do IndexNow não garanta que os motores de busca rastreiem ou indexem as suas páginas, pelo menos pode ter a certeza de que eles foram informados das alterações.
A SEO não vive apenas do Google, há cinco motores de busca que participam no IndexNow:
Microsoft Bing , Naver , Seznam.cz , Yandex e Yep.
Não há qualquer problema em continuar a utilizá-lo, tem duas alternativas.
1) Utilize o plugin Microsoft Bing IndexNow que se encontra no repositório do WordPress. Quando o instala, já é criada uma chave de API. Pode deixá-la em automático e esquecer-se dela. Sempre que publicar ou editar um post, este será enviado para o IndexNow.
2. Envie os URLs manualmente a partir do navegador , conforme descrito aqui. Para quaisquer outras questões, consulte as FAQ .
rel="patrocinado Embora ainda possa adicionar um nofollow a hiperligações pagas e de afiliados, a Google aconselha a adicionar rel="sponsored" a estas hiperligações.
O Rank Math acrescentou na sua caixa de ligação a possibilidade de adicionar esta etiqueta com um clique.
Agora não há outra opção senão adicioná-las manualmente, pois é difícil encontrar uma solução automatizada que "saiba" com certeza quais as hiperligações que são ou não são hiperligações de afiliados.
A estrutura tem o seguinte aspeto e só precisa de editar o bloco como html para inserir a etiqueta.
<a rel="sponsored" href="https://ejemplo.com">Texto del enlace</a>
Desinstalação completa do Rank Math Agora é altura de eliminar o plugin. O Rank Math oferece um filtro para a remoção completa de todos os dados do Rank Math.
/**
* Filtro para eliminar datos de Rank Math de la base de datos
*/
add_filter( 'rank_math_clear_data_on_uninstall', '__return_true' );
Este código deve ser colocado no ficheiro rank-math.php na pasta do seu modelo (ou no ficheiro functions.php) e, quando voltar à lista de plugins, aparecerá esta mensagem avisando-o de que, ao desativar e apagar o plugin, todos os dados serão apagados
Surpresa, a eliminação dos dados não era nada disso. Muitos programadores criam plugins de tal forma que, quando os reinstalamos, recuperamos parte da última configuração e nem todos têm uma opção de desinstalação completa. Outros prometem que a limpeza é completa, mas não é, porque as batatas.
É suposto estes dados serem eliminados automaticamente de 30 em 30 dias, mas como pode ver nas imagens abaixo, ainda temos quatro tabelas que totalizam mais de 137 Mb com vestígios do Rank Math com mais de um ano.
Estes são quatro:
wp_actionscheduler_actions wp_actionscheduler_logs wp_actionscheduler_claims wp_actionscheduler_groups
Para esvaziar estas tabelas, utilizei o Advanced Database Cleaner Pro , mas também o pode fazer a partir do phpMyAdmin.
Estas quatro tabelas são criadas e preenchidas por plug-ins como Woocommerce , The Events Calendar , WP Rocket , Rank Math e alguns outros.
Se não utilizar estes plug-ins, pode esvaziar estas tabelas sem qualquer problema. No entanto, nunca é demais verificá-las e fazer primeiro uma cópia de segurança da base de dados ou ter uma cópia de segurança completa recente, por precaução.
Que faças uma cópia de segurança antes. Já fizeste uma cópia de segurança? Então não digas que não te avisei.
Uma vez concluída a limpeza, basta dar uma vista de olhos à configuração do The SEO Framework para descobrir que há muito pouco a alterar, uma vez que os elementos básicos estão pré-configurados.
Para além do impacto positivo na velocidade de carregamento que a desinstalação do Rank Math tem, outra coisa que notei pouco depois é que o novo plugin, que utilizei no passado, não precisa de qualquer atenção, uma vez configurado pode esquecer-se dele.
O Seo Framework é compatível com o Polylang, o WPML, o MultilingualPress e parcialmente com o TranslatePress, mas no Polylang não aparecem as cadeias de caracteres do plugin para traduzir o título Meta e a descrição Meta de cada língua na sua página de raiz, ou seja, /es/, /en/, /de/ etc.
Além disso, na ajuda do Polylang aconselham que a página inicial do blogue seja uma página estática e não uma página dinâmica para poder adicionar estas cadeias de caracteres, o que complica ainda mais as coisas.
No entanto, depois de muita pesquisa , encontrei aqui uma forma de os registar no Polylang para os traduzir. Embora o código tenha quase sete anos e não seja a melhor forma de o fazer, uma vez que pode quebrar com uma futura atualização do plugin, mas por agora funciona.
//Para añadir en el functions.php de tu plantilla
if ( function_exists( 'the_seo_framework' ) ) {
$the_seo_framework = the_seo_framework();
$description = $the_seo_framework->get_option( 'homepage_description' );
pll_register_string( 'homepage_description', $description ?: 'Empty description!', 'seo_framework', false );
}
Em princípio, na administração do plugin só encontrará um único mapa que estará localizado em:
https://jrmora.com/sitemap.xml
Mas, se utilizar o Polylang, dependendo da sua instalação, poderá encontrar os mapas para cada língua que está a utilizar, a fim de os enviar para o Bing Webmaster Tools e para a Google Search Console para serem rastreados em vários formatos (exemplo de mapa em inglês):
https://jrmora.com/sitemap.xml?lang=en
https://jrmora.com/en/sitemap.xml?