Alterando o Slug Author na URL no WordPress

Quando criamos no WordPress cadastro de usuário no frontend, muitas vezes queremos que criar também um painel para esse usuário e usamos muitas vezes o arquivo author.php, e recuperar a informação do usuário.

Só que dependo do projeto, precisamos alterar ao slug, ao invés de author, usar outros nome.

Esse tutorial, mostrarei como alterar esse slug, e nosso caso, para profile, mas podendo ser alterado pra qualquer outro nome que preferir.

No arquivo functions.php, e adicione esse código:

/**
 * Cria uma função
**/
function change_slug_author() {
	/**
	* Precisamos ter acesso ao $wp_rewrite,
	* como estamos no escopo de uma função
	* usaremos global
	*/
    global $wp_rewrite;

    //Definimos uma variável para novo slug
    $slug = 'profile';

   /**
    * Vamos atribuir o novo slug
    * ao atributo author_base
   **/
    //
    $wp_rewrite->author_base =$slug;
}

/**
* Vamos adicionar a função ao add_action,
* como gancho init
*/
add_action('init', 'change_slug_author');

Depois de alterar, é necessário ir no Painel do WordPress, acessar Configurações > Links Permanentes. E depois clicar em Salvar Alterações, lembrando que deixe marcado a opção Nome do Post.

Já podemos acessar a URL com Novo slug, vamos dizer que nome do usuário é mxmasters, então acessaria assim:

http://www.seusite.com.br/profile/mxmasters

Agora vamos criar um arquivo chamado author.php, e recuperar o valor vindo da URL.

<?php get_header(); ?>

<?php $user = (get_query_var('author_name')) ? get_user_by('slug', get_query_var('author_name')) : get_userdata(get_query_var('author')); ?>O Nome do usuário é : <?php echo $user->first_name?>

<?php get_footer(); ?>

Pronto, dessa forma você pode personalizar, pra exibir informações do usuário, de acordo com suas necessidade.

Espero que tenham gostado, e até a próxima.

Deixe uma resposta

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