Como remover “Protegido” e “Privado” dos títulos no WordPress

  • Last modified: 5 de agosto de 2024
  • Reading time: 16 mins

Se você alterar a visibilidade do seu conteúdo no WordPress para Protegido por senha ou Privado, o seu título será exibido com um “Protegido: “ ou um “Privado: “ na frente. Para remover estes textos ou alterá-los você pode usar um filtroprivate_title_format para os privados ou protected_title_format para os protegidos por senha.

Para tirar o Protegido: e o Privado:

Use o seguinte código no functions.php do seu tema:

PHP
function meutema_limpa_titulo( $titulo ) {
    return '%s';
}
add_filter( 'private_title_format', 'meutema_limpa_titulo' );
add_filter( 'protected_title_format', 'meutema_limpa_titulo' );

Para alterar o Protegido:, por exemplo:

Use o seguinte código no functions.php do seu tema:

PHP
function meutema_altera_titulo( $titulo ) {
    return 'O conteúdo %s está protegido por senha.';
}
add_filter('protected_title_format', 'meutema_altera_titulo');

Entendendo o problema

Infelizmente, a maioria dos conteúdos que temos de WordPress por aí não ensina a pescar, só entrega o peixe pronto através de snippets para copiar e colar no functions.php do seu tema. Para compreender o que está acontecendo nesse caso, é preciso dar uma olhada em duas linhas do wp-includes/post-template.php:

PHP
$protected_title_format = apply_filters( 'protected_title_format', __( 'Protected: %s' ), $post );
$title = sprintf( $protected_title_format, $title );

Temos aí o formato sendo definido na variável $protected_title_format e a variável $title sendo o resultado do título sendo aplicado neste formato.

Para entender o que o WordPress está fazendo nestas duas linhas, veja o esquema:

O resultado de sprintf mudará conforme o formato aplicado, ou seja, mudando o formato o título muda junto.

Para outros casos você pode alterar o título com o filtro the_title, usado logo abaixo nessa mesma função, get_the_title.