0
201

SHARE

Post Aleatório

Como redirecionar usuários para um post aleatório no WordPress

Um dos novos recursos que adicionamos aqui no [wp24] é este recurso chamado “Explore“. Quando um usuário clica neste botão, eles são levados para um post aleatório do site. Anteriormente, queríamos apenas que os usuários fossem levados à página para exibir um post aleatório. Neste artigo, vamos mostrar-lhe como redirecionar usuários para um post aleatório no WordPress.

Abra o arquivo functions.php do seu tema, ou Plugin Específico do Site e cole o seguinte código:

add_action('init','random_add_rewrite');
function random_add_rewrite() {
       global $wp;
       $wp->add_query_var('random');
       add_rewrite_rule('random/?$', 'index.php?random=1', 'top');
}

add_action('template_redirect','random_template');
function random_template() {
       if (get_query_var('random') == 1) {
               $posts = get_posts('post_type=post&orderby=rand&numberposts=1');
               foreach($posts as $post) {
                       $link = get_permalink($post);
               }
               wp_redirect($link,307);
               exit;
       }
}

É só isso e pronto. Agora crie um botão que link para “seudominio.com.br/random/” e o snippet acima vai cuidar do resto.

Explicação do snippet:

Este snippet primeiramente adiciona a variável “random“. Em seguida, ele usa o hook template_redirect do WordPress e diz se a variável “random” está lá, então, obtém um post do tipo “Post” de forma aleatória. Em seguida, ele faz um simples redirecionamento 307.

A razão pela qual o snippet usa o redirecionamento 307, é por ser um redirecionamento temporário. Os Browsers muitas vezes mantém o cache do redirecionamento 302, que é conhecido por redirecionamentos temporários.

Alguns bugs que encontramos

Se você estiver usando o plugin W3 Total Cache e tiver ativado o cache do banco de dados, então você precisa adicionar as seguintes regras na lista de exclusão.

/random/
/index.php?random=1

Se você estiver usando  o plugin WordPress SEO do Yoast, então não use Redirecionar URLs feias para links permanentes limpos na área de Links Permanentes. Caso contrário, este código não vai funcionar.

Se você estiver tendo problemas com o redirecionamento indo para um erro 404 ao usar “seudominio.com.br/random/”, tente usar “seudominio.com.br/?random=1”.

Se quiser usar um plugin para fazer este redirecionamento, tente o Random Redirect. (Este plugin não é atualizado há algum tempo)

Agora você pode criar um pequeno botão Explore como o que temos em nosso site. Deixe sua opinião em um comentário abaixo e compartilhe este tutorial com seus amigos.

Não perca mais nenhuma atualização aqui!

Ative as Notificações!

Clique aqui e, em seguida, clique em Permitir na caixa que aparecerá na parte superior da janela, próximo à barra de endereços.

Torne-se um Assinante e Eleve seu Conhecimento do WordPress!

Acesso Exclusivo, Suporte Especializado e Muito Mais.

Se você está aproveitando nosso conteúdo gratuito, vai adorar os benefícios exclusivos que oferecemos aos nossos assinantes! Ao se tornar um assinante do WP24Horas, você terá acesso a:

Não perca a oportunidade de maximizar seu potencial no WordPress. Clique no botão abaixo para se tornar um assinante e leve suas habilidades ao próximo nível!

Deixe um comentário

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

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

Não perca mais nenhuma atualização aqui!

Tabela de Conteúdo
PUBLICIDADE
Últimos Posts
Conclusão: Resumo e Próximos Passos no Desenvolvimento WordPress

Conclusão: Resumo e Próximos Passos no Desenvolvimento WordPress

Recursos e Comunidade: Onde Buscar Suporte e Continuar Aprendendo

Recursos e Comunidade: Onde Buscar Suporte e Continuar Aprendendo

Desenvolvimento WordPress como Profissão: Vale a Pena?

Desenvolvimento WordPress como Profissão: Vale a Pena?

Otimização para SEO e Performance no WordPress

Otimização para SEO e Performance no WordPress

Segurança no Desenvolvimento WordPress: Mantendo seu Site Seguro

Segurança no Desenvolvimento WordPress: Mantendo seu Site Seguro

Explorando a REST API do WordPress: Integrações e Funcionalidades Avançadas

Você precisa estar logado para ver esta informação.

Torne-se um Assinante e Eleve seu Conhecimento do WordPress!

Acesso Exclusivo, Suporte Especializado e Muito Mais.

Se você está aproveitando nosso conteúdo gratuito, vai adorar os benefícios exclusivos que oferecemos aos nossos assinantes! 

Não perca a oportunidade de maximizar seu potencial no WordPress. Clique no botão abaixo para se tornar um assinante e leve suas habilidades ao próximo nível!