X

Como Alterar o Slug da URL do Autor

Snippets por IsItWP

Você está procurando uma maneira de alterar o slug do URL do autor? Este trecho alterará o slug padrão, mysite.com/author/name, para mysite.com/profile/name. No entanto, você pode alterá-lo para o que desejar.

Instruções:

  1. Adicione este código ao arquivo functions.php do seu tema ou em um plugin específico do site.
  2. Altere profile na linha 4 para qualquer nome que você desejar.
add_action('init', 'cng_author_base');
function cng_author_base() {
    global $wp_rewrite;
    $author_slug = 'profile'; // change slug name
    $wp_rewrite->author_base = $author_slug;
}

Observação: Se esta é a primeira vez que você adiciona trechos de código no WordPress, consulte nosso guia sobre como copiar / colar trechos de código corretamente no WordPress, para não quebrar acidentalmente seu site.

Se você gostou deste trecho de código, considere conferir nossos outros artigos no site, como: 9 Melhores Ferramentas de SEO para Aumentar o Tráfego do Seu Site, RAPIDAMENTE!

Comentários   Deixe uma resposta

  1. Nem o seu código nem o meu funcionarão! ! ! ! É irritante!……

    // Altera a base do autor para a URL do autor.
    function custom_author_base() {
    global $wp_rewrite;
    $author_slug = ‘@’; // Define o slug da base do autor para ‘@username’
    $wp_rewrite->author_base = $author_slug;
    }
    add_action( ‘init’, ‘custom_author_base’ );

    // Reescreve a URL do autor para a nova estrutura de URL.
    function custom_author_rewrite_rules( $author_rewrite ) {
    $author_new_rules = array(
    ‘@([^/]+)/?$’ => ‘index.php?author_name=$matches[1]’
    );
    $author_rewrite = array_merge( $author_new_rules, $author_rewrite );
    return $author_rewrite;
    }
    add_filter( ‘author_rewrite_rules’, ‘custom_author_rewrite_rules’ );

    // Redireciona a URL antiga do autor para a nova estrutura de URL.
    function custom_author_redirect() {
    if ( is_author() && strpos( $_SERVER[‘REQUEST_URI’], ‘/author/’ ) !== false ) {
    wp_redirect( home_url( str_replace( ‘/author/’, ‘/’, $_SERVER[‘REQUEST_URI’] ) ), 301 );
    exit();
    }
    }
    add_action( ‘template_redirect’, ‘custom_author_redirect’ );

  2. Olá, é possível alterar o slug do autor apenas para tipos de postagem personalizados usando uma condição if?
    Obrigado

  3. Este código é para alterar a base do autor, não o slug do autor.

    1. Isso não é para os nomes de autores individuais, mas sim para alterar o slug /author/ para outra coisa, como /profile/. O resultado final seria /profile/nomedeautor

  4. Obrigado!!

  5. Muito obrigado!!

  6. obrigado

  7. obrigado

  8. Lembra da pergunta do Mike Kennedy?
    Como você pode ter apenas site.com/nome-do-autor/ ?

    Se você definir author_slug = '' ;

    isso funcionará para as páginas do autor, mas no meu caso agora recebo erros 404 não encontrados para páginas normais. Parece que um slug de autor vazio quebra a reescrita para páginas normais.
    Alguém tem uma solução?

    1. O que você pode tentar é ir em “permalinks” dentro de configurações e depois clicar em “salvar alterações” para limpar as regras de reescrita.

  9. How to change author url base on your WordPress site October 2, 2013 at 10:30 am

    […] para Kevin Chard pelo legal […]

  10. Eu consegui alterar a estrutura de permalink do author_base com um código semelhante ao acima, mas criei uma função personalizada e estou me perguntando se eu poderia ter 2 author_base diferentes com base na função do usuário. A estrutura padrão para administradores, autores, etc. (/author/nome_do_autor) e outra para a nova função do usuário (/gift-registry/nome_do_autor).

    Ryan

  11. Obrigado!

  12. @wpsnipp:disqus é possível criar slugs de autor personalizados com base nas funções do usuário?

  13. adicione $wp_rewrite->flush_rules()
    no final da função, funcionará sem 404 🙂

    1. obrigado mano

  14. Coloquei isso dentro do functions.php e mudou o slug, no entanto, estou recebendo um 404 ao visitar o novo slug. Alguma sugestão? Obrigado

    1. Olá Zach, se você continuar tendo problemas, pode tentar este plugin, pois você não deve ter nenhum problema.

      http://wordpress.org/extend/plugins/author-slug/

      1. Olá Kevin,

        Obrigado pela sugestão. No entanto, eu vi esse plugin e adoraria descobrir como usá-lo sem um plugin — estou construindo um site muito grande e estou tentando reduzir o número de plugins.

        Obrigado,
        Zach

        1.  Olá Zach, você pode simplesmente tirar o código do plugin e colocá-lo dentro do seu functions.php e isso funcionará bem.

        2. Para qualquer outra pessoa com o mesmo problema… apenas limpe os permalinks (Ir em Configurações->Permalinks os limpa)

Adicionar um comentário

Ficamos felizes que você tenha escolhido deixar um comentário. Por favor, tenha em mente que todos os comentários são moderados de acordo com nossa política de privacidade, e todos os links são nofollow. NÃO use palavras-chave no campo do nome. Vamos ter uma conversa pessoal e significativa.

Checklist de Lançamento WordPress

O Checklist Definitivo para Lançamento de WordPress

Compilamos todos os itens essenciais da lista de verificação para o lançamento do seu próximo site WordPress em um e-book prático.
Sim, envie-me o eBook Gratuito!