Posts relacionados no WordPress: como arrumar as colunas com CSS

coffee writing computer blogging

O plugin Jetpack para WordPress vem com um módulo de posts relacionados que automaticamente adiciona, ao final da publicação, uma lista de textos similares. É ideal para direcionar leitores para outros posts relevantes dentro do site.

Você pode configurar os posts relacionados tanto como lista ou em colunas/grade. Ao selecionar a grade, o problema aparece.

Por padrão, o Jetpack força cada post relacionado a ocupar 50% do espaço em dispositivos móveis com telas de até 640px. Como são mostrados três posts, um deles é jogado para uma segunda linha e o resultado fica péssimo:

Posts relacionados em uma tela de celular, resultando em uma coluna quebrada
Que tristeza

Há pelo menos duas formas de resolver isso com CSS:

  1. Forçar cada post a ocupar 1/3 da largura de tela não importando a resolução
  2. Tornar a área responsiva ao mostrar uma lista em dispositivos móveis e uma coluna em telas maiores

Escolhi a segunda pela versatilidade.

O código

Para testar o código, abra o WP Admin e vá em Aparência > Personalizar > CSS Adicional. Agora, adicione as seguintes linhas:

Em suma, o código faz o seguinte:

  • Cria uma lista com os posts por padrão ao remover o float e forçar a largura máxima
  • Arruma os espaçamentos e margens
  • Transforma a lista em colunas usando flex em telas com largura maior que 375px. Poderia ter usado grid, mas vamos simplificar.

Como o CSS do Jetpack carrega no rodapé do site, você vai precisar especificar o seu código. Neste exemplo, eu usei a classe .entry-content, presente na maioria dos temas. Outra alternativa seria usar o !important, mas é melhor deixá-lo para último caso.

Como resultado, os posts relacionados ficarão parecidos com a imagem abaixo:

Posts relacionados após o código CSS, em uma lista organizada.

Caso o código acima não funcione no seu site, dê um grito. Talvez seja apenas uma questão de mudar algumas partes do CSS.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *