Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. WordPress
Code

50 Filtros Para WordPress: Filtros 11 a 20

by
Difficulty:BeginnerLength:MediumLanguages:
This post is part of a series called 50 Filters of WordPress.
50 Filters of WordPress: The First 10 Filters
50 Filters of WordPress: Filters 21-30

Portuguese (Português) translation by Erick Patrick (you can also view the original English article)

Na parte anterior dessa série, começamos a falar sobre os 50 filtros para WordPress. Selecionados entre as centenas que existem, começamos resenhando 10 deles.

Nesse tutorial, resenharemos outra leva desses filtros e também apresentaremos alguns exemplos de cada um deles.

É hora de começar!

Brincando com Dados Traduzíveis no WordPress

Uma das funcionalidades mais legais do WordPress é permitir que cada pedaço de texto seja traduzível. Se seu site estiver em inglês, ele não precisa dessa funcionalidade - ou precisa? 

O filtro gettext pode funcionar de uma maneira diferente para você. Vejamos um exemplo interessante.

Exemplo: Corrija a Gramática de Outros Desenvolvedores!

Suponha que você tenha encontrado um bom plugin para usar, mas percebeu que o seu criador não escreve muito bem em Inglês, e vê que há texto mal escrito pelo código. Felizmente, cadeias de caracteres são traduzíveis, então você pode substituir esses textos mal escritos usando o filtro gettext

Vejamos como:

Limpando o Slug

O WordPress usa uma função chamada sanitize_title() para limpar os títulos dos artigos, substituindo os espaços por hifens e os tornando no ponto para serem salvos como slug. Com o filtro sanitize_title (sim, o mesmo nome) você pode estender essa função.

Exemplo: Removendo a Palavra "de" do Slug

Se não quiser que a palavra "de" apareça em seus slugs, você pode removê-la, usando o trecho de código abaixo:

Uma solução simples e elegante.

Configurando Exceções para Texturização de Shotcode

Esse filtro é útil, uma vez que ele permite "especificar quais shortcodes não devem passar pela função wptexturize()", como explicado no Codex.

Exemplo: Exclua seu Shortcode da Texturização

Se quiser que algum shortcode que você criou, fora da texturização, use o código abaixo para adicionar o nome do seu shortcode à lista de "não texturização":

Bem fácil, não é?

Filtrando o Estado de Aprovação de um Comentário

O WordPress tem suas próprias verificações para comentários (que podem ser bem fáceis para spammers) antes de decidir se um comentário é considerado lixo, mandado para a fila de moderação ou aprovado automaticamente. O filtro pre_comment_approve permite que plugins ajudem nessa decisão.

Exemplo: Marcando como Lixo os Comentários com Nomes de Autor Muito Grande

No meu país, Turquia, os spammers de comentários de sites em WordPress usam nomes bem grandes. Algumas vezes, usam a própria URL como nome. 

Com o trecho abaixo, você pode eliminar spammers que usem nomes como "Domestic and International Shipping With Extremely Low Prices (Click Here for More Information)", automaticamente:

Um agradecimento em especial para Andrew Norcross pela ideia!

Dica extra: Se quiser eliminar esses comentários lixo, usando a URL do autor do comentário, use o filtro 'comment_author_url' ao invés de 'comment_author'. O Andrew Norcross use o filtro da URL na dica original, por falar nisso.

Configurando a Funcionalidade "Publicar Através do E-mail"

Você sabia que você pode pulicar em seu site do WordPress através do e-mail? O WordPress oferece essa funcionalidade, que raramente é usada, e que pode ser habilitada ou desabilitada através do filtro enable_post_by_email_configuration.

Exemplo: Habilitando ou Desabilitando a Funcionalidade "Publicar Através do E-mail"

Por algum motivo (talvez por segurança), você queira desabilitar essa funcionalidade. E você pode fazê-lo usando apenas esse pequeno trecho de código abaixo:

Ou, caso use o WordPress Multisite e queira habilitá-la (ela, por padrão, é desabilitada na versão Multisite), você pode usar a função __return_true():

Filtrando os Títulos das Páginas

A função wp_title() retorna o título das páginas, aqueles títulos que vemos nas abas dos navegadores. E a função wp_title nos permite alterar os títulos.

Exemplo: Reescrevendo os Títulos das Páginas – A Forma Correta

Um respeitado "guru" do WordPress (e editor aqui no Tuts+ Code), Tom McFarlin, explica em seu blog como reescrever, apropriadamente, os títulos das páginas, usando a função wp_title() e o filtro de mesmo nome:

Uma vez que wp_title é uma função filtrada, isso significa que podemos prover um gancho customizado que nos permita definir um esquema para mostrar nossos títulos, não apenas de forma mais precisa, mas mais corretamente também.

Tenha certeza de verificar o artigo do Tom. Muito obrigado, Tom!

Processando Comentários Antes de Serem Salvos na Base de Dados

Se você precisar de qualquer ajuda em alterar os dados dos comentários (o ID do artigo do comentário, o nome do autor, o endereço de e-mail do autor, o site do autor, o tipo de comentário, o ID de usuário caso ele seja um usuário cadastro ou conteúdo do comentário), o filtro preprocess_comment pode ajudar você.

Exemplo: Abaixe o Volume dos Gritadores

VOCÊ RECEBE MUITOS COMENTÁRIOS ONDE CADA PALAVRA ESTÁ ESCRITA EM MAIÚSCULO? Em caso afirmativo, você pode torná-los, automaticamente, em minúsculo, usando o trecho de código abaixo:

Legal, hein?

Administrando Redirecionamento Após o Login

Esse pequeno filtro nos permite configurar os redirecionamentos (outros além do painel administrativo) após o processo de login, que podem ser interessantes em alguns casos.

Exemplo: Redirecionar os Inscritos para Página Inicial

Se não quiser seus usuários (do tipo "leitores") vejam o painel administrativo após o realizarem login, você pode redirecioná-los para a página inicial do seu site:

Porém, o Codex no avisa sobre uma coisa: "Tenha certeza de usar o add_filter fora de is_admin(), uma vez que essa função não está disponível quando o filtro é invocado."

Criando Links de Ação para Seu Plugin

Se você desenvolve plugins, talvez se pergunte como os desenvolvedores fazem para adicionar links abaixo do nome de seus plugins, lá na página de Plugins. Pois bem, eles usam esse filtro.

Exemplo: Adicionando um Link "Configurações" na Página de Plugins

Para adicionar links com ações customizadas sob o nome do seu plugin, na lista da página de Plugin, você pode usar essa função e atrelá-la ao filtro

Perceba que usamos a constante __FILE__ para atrelar nossa função ao filtro do nome do seu plugin. Bacana, não é?

Use com cuidado: Se abusar dessa técnica para colocar links nessa área, o pessoal lembrará de você como um spammer.

Filtrando o Conteúdo Dentro do Editor de Artigos

Alguma vez já quis que o editor de artigos já viesse com algum conteúdo, como um modelo de artigos ou alguma nota para autores? Você pode fazê-lo, graças ao filtro the_editor_content.

Exemplo: Deixando Lembretes para os Autores

Nós vamos criar lembretes para nossos autores. Se tiver um passo-a-passo que precise relembrar seus autores, você pode pré-preencher o editor de artigos com algum texto ou HTML, usando o trecho abaixo:

Altere a variável $template de acordo com aquilo que quiser falar para os autores e pronto!

Fim da Parte Dois

Nós passamos pela segunda leva dos 50 filtros. Espero que tenha gostado e aprendido novas coisas. Vejo você no próximo artigo!

Também gostaria de saber o que você achou. Que tal esses filtros? Deixe seu comentário abaixo. Se tiver curtido o artigo, não esqueça de compartilhá-lo!

Seja o primeiro a saber sobre novas traduções–siga @tutsplus_pt no Twitter!

Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.