Substituir o URL padrão das páginas do autor?


13

Portanto, o URL padrão para exibir uma lista de postagens de um autor específico se parece com isso:

http://domain.com/author/{username}

Eu estou querendo saber como alterar o 'autor' nesse URL para outra coisa?

Estou trabalhando em um site de uma escola charter e eles gostariam de permitir que cada professor tenha uma lista de postagens por "sala de aula". Portanto, o URL desejado seria

http://domain.com/classroom/{username}

Respostas:



15

Você pode adicionar isso em suas funções, e ele reescreverá a lesma do padrão "autor" para "sala de aula",

function new_author_base() {
    global $wp_rewrite;
    $author_slug = 'classroom';
    $wp_rewrite->author_base = $author_slug;
}
add_action('init', 'new_author_base');

espero que ajude você


1
flush_rules()é muito caro (em recursos), então eu não o chamaria em todo carregamento de página. Se você fizer isso apenas em um site, poderá deixar de fora e apenas visitar a página de links permanentes , isso também será uma questão de regras.
Jan Fabry

Sim, @Jan Fabry, você está certo, eu editei a resposta agora. Eu escrevi uma solução melhor.
Philip

4
Para quem quer saber se deve usar esse trecho ou o plugin t31os mencionado: o plugin faz exatamente o mesmo, mas com uma interface para alterar a parte da URL. Como você provavelmente não o altera todos os meses, esse trecho functions.phpé mais que suficiente (e não será desativado por acidente).
Jan Fabry


0

Você pode adicionar isso no seu functions.php:

global $wp_rewrite;
$wp_rewrite->author_base = "member"; // or whatever
$wp_rewrite->flush_rules();
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.