Felipe Elia

ENPT

Como trocar “Post” por “Notícia” no WordPress

3 min de leitura

Nas traduções do WordPress nós mantemos o termo original, em inglês, post. Nem publicações, nem artigos, nem entradas seriam termos tão genéricos. Postagem, apesar de reconhecido pela ABL, não comunica melhor que posts. Mesmo assim, algumas vezes precisamos de um termo mais específico. Para autores e administradores de um portal de notícias um termo menos abrangente ajuda mais, então post é notícia mesmo.

Como eu já expliquei aqui antes, para alterar alguma coisa dos arquivos do WordPress devemos usar os hooks (actions ou filters). Desde a versão 3.5 do WordPress existe o filtro “post_type_labels_{$post_type}”, capaz de alterar os labels, isto é, as palavras envolvidas no processo de descrição do tipo de conteúdo. Para alterar o nome posts é só atrelar uma função ao filtro post_type_labels_post:

PHP
function post_para_noticia( $labels ) {
    $labels->name = __( 'Notícias', 'post-para-noticia' );
    $labels->singular_name = __( 'Notícia', 'post-para-noticia' );
    $labels->add_new = __( 'Adicionar nova', 'post-para-noticia' );
    $labels->add_new_item = __( 'Adicionar nova notícia', 'post-para-noticia' );
    $labels->edit_item = __( 'Editar notícia', 'post-para-noticia' );
    $labels->new_item = __( 'Nova notícia', 'post-para-noticia' );
    $labels->view_item = __( 'Ver notícia', 'post-para-noticia' );
    $labels->view_items = __( 'Ver notícias', 'post-para-noticia' );
    $labels->search_items = __( 'Pesquisar notícia', 'post-para-noticia' );
    $labels->not_found = __( 'Nenhuma notícia encontrada.', 'post-para-noticia' );
    $labels->not_found_in_trash = __( 'Nenhuma notícia encontrada na lixeira.', 'post-para-noticia' );
    $labels->all_items = __( 'Todas as notícias', 'post-para-noticia' );
    $labels->archives = __( 'Arquivos de notícias', 'post-para-noticia' );
    $labels->attributes = __( 'Atributos da notícia', 'post-para-noticia' );
    $labels->insert_into_item = __( 'Inserir na notícia', 'post-para-noticia' );
    $labels->uploaded_to_this_item = __( 'Anexadas a esta notícia', 'post-para-noticia' );
    $labels->filter_items_list = __( 'Filtrar lista de notícias', 'post-para-noticia' );
    $labels->items_list_navigation = __( 'Navegação da lista de notícias', 'post-para-noticia' );
    $labels->items_list = __( 'Lista de notícias', 'post-para-noticia' );
    $labels->menu_name = __( 'Notícias', 'post-para-noticia' );
    $labels->name_admin_bar = __( 'Notícia', 'post-para-noticia' );
    return $labels;
}
add_filter( 'post_type_labels_post', 'post_para_noticia' );

[youtube_cta]

Se você colocar o código acima no functions.php do seu tema ele irá funcionar. Mesmo assim, como eu já falei no texto sobre território de plugins e território de temas, isso não deve estar associado ao tema em uso e sim em um plugin separado. É só copiar, colar em um arquivo com extensão .php e colocar um cabeçalho. Se você quiser cortar caminho pode baixar esse zip com o arquivo. Só instalar pelo painel mesmo, em Plugins →Adicionar novo →Enviar plugin.

Para trocar os labels das páginas, troque post_type_labels_post por post_type_labels_page.

Infelizmente, vários textos e plugins na internet sugerem usar as actions admin_menu e init. Estes são métodos antigos, muito mais intrusivos e não precisam mais ser usados, afinal temos um filtro exatamente para isso.


Se o post foi útil ou se você conhece alguma forma melhor ainda de realizar esse processo deixe um comentário aqui embaixo!

Gostou deste post? Receba o próximo por e-mail.

Novos artigos e ferramentas úteis, sempre que houver algo que valha compartilhar.

Sem frequência fixa. Sem spam. Cancele quando quiser.

3 respostas a “Como trocar “Post” por “Notícia” no WordPress”

  1. Avatar de andre tristao
    andre tristao

    Fantástico! Parabéns.

    1. Avatar de andre tristao
      andre tristao

      E como faço para alterar o nome “próximo e Anterior” ? Eu usei o seu código e coloquei PRODUTOS, funcionou beleza, mas fica assim: “próxima produto” “anterior produto”

      1. Avatar de Felipe Elia
        Felipe Elia

        Onde aparecem essas frases? Se for fora do Painel, ou seja, no site mesmo, provavelmente você vai precisar alterar no seu tema.