Quando eu fiz o vídeo e o post com 4 dicas rápidas de programação no WP no ano passado, imaginei que a gente teria uma continuação. O Pierre Saïkali fez uma série de tweets compartilhando várias outras dicas. Conversei então com ele (curiosidade: ele também fala português), que aceitou que eu trouxesse isso para cá. Não se esqueçam de segui-lo para não perder nenhuma dica!

Dica 1: wp_list_filter

Essa função ajuda a filtrar um array baseado em condições no formato chave => valor:

$animais = [
	[ 'nome' => 'crocodilo', 'voa' => false, 'classe' => 'réptil' ],
	[ 'nome' => 'cachorro',  'voa' => false, 'classe' => 'mamífero' ],
	[ 'nome' => 'gato',      'voa' => false, 'classe' => 'mamífero' ],
	[ 'nome' => 'falcão',    'voa' => true,  'classe' => 'ave' ],
	[ 'nome' => 'morcego',   'voa' => true,  'classe' => 'mamífero' ],
];

wp_list_filter( $animais, [ 'classe' => 'mamífero' ] );
// [
//   [ 'nome' => 'cachorro', ... ]
//   [ 'nome' => 'gato', ... ]
//   [ 'nome' => 'morcego', ... ]
// ]

wp_list_filter( $animais, [ 'classe' => 'mamífero', 'voa' => true ] );
// [
//   [ 'nome' => 'morcego', ... ]
// ]

wp_list_filter( $animais, [ 'classe' => 'mamífero', 'voa' => true ], 'OR' );
// [
//   [ 'nome' => 'cachorro', ... ]
//   [ 'nome' => 'gato', ... ]
//   [ 'nome' => 'falcão', ... ]
//   [ 'nome' => 'morcego', ... ]
// ]

Dica 2: wp_sprintf

Esta função é uma implementação com filtros da função nativa sprintf(). Além de poder criar novos marcadores com o filtro wp_sprintf, você também pode usar o marcador %l para gerar listas separadas por vírgulas com um e no fim. Por exemplo:

echo wp_sprintf( 'Lista de animais: %l.', [ 'crocodilo', 'cachorro', 'gato', 'falcão', 'morcego' ] );

vai gerar a seguinte string:

Lista de animais: crocodilo, cachorro, gato, falcão e morcego.

Dica 3: wp_list_sort

Acho que já deu para perceber que eu gosto demais dessas funções utilitárias para arrays, não é? Esta função ajuda a ordenar um array multidimensional baseado em ou um mais índices específicos. Atenção para o quarto parâmetro, que determina se o array de resultado manterá ou não os índices.

$animais = [
	'crocodilo' => [ 'nome' => 'crocodilo', 'voa' => false, 'classe' => 'réptil' ],
	'cachorro'  => [ 'nome' => 'cachorro',  'voa' => false, 'classe' => 'mamífero' ],
	'gato'      => [ 'nome' => 'gato',      'voa' => false, 'classe' => 'mamífero' ],
	'falcão'    => [ 'nome' => 'falcão',    'voa' => true,  'classe' => 'ave' ],
	'morcego'   => [ 'nome' => 'morcego',   'voa' => true,  'classe' => 'mamífero' ],
];

wp_list_sort( $animais, 'classe' );
// [
//   0 => [ 'nome' => 'falcão', ... ]
//   1 => [ 'nome' => 'gato', ... ]
//   2 => [ 'nome' => 'cachorro', ... ]
//   3 => [ 'nome' => 'morcego', ... ]
//   4 => [ 'nome' => 'crocodilo', ... ]
// ]

wp_list_sort( $animais, 'nome', 'DESC' );
// [
//   0 => [ 'nome' => 'morcego', ... ]
//   1 => [ 'nome' => 'gato', ... ]
//   2 => [ 'nome' => 'falcão', ... ]
//   3 => [ 'nome' => 'crocodilo', ... ]
//   4 => [ 'nome' => 'cachorro', ... ]
// ]

wp_list_sort( $animais, 'nome', 'ASC', true );
// [
//   'cachorro'  => [ 'nome' => 'cachorro', ... ]
//   'crocodilo' => [ 'nome' => 'crocodilo', ... ]
//   'falcão'    => [ 'nome' => 'falcão', ... ]
//   'gato'      => [ 'nome' => 'gato', ... ]
//   'morcego'   => [ 'nome' => 'morcego', ... ]
// ]

Dica 4: make_clickable

Esta função transforma todos os endereços e e-mails de uma string em links.

$texto = 'Exemplo de texto: você está no https://felipeelia.com.br e o seu e-mail tem o formato pessoa@dominio.com';
 
echo make_clickable( $texto );
// Exemplo de texto: você está no <a href="https://felipeelia.com.br" rel="nofollow">https://felipeelia.com.br</a> e o seu e-mail tem o formato <a href="mailto:pessoa@dominio.com">pessoa@dominio.com</a>

Essas foram só algumas das muitas dicas que o Pierre já publicou. Se você me segue no Twitter já viu várias delas por lá. Se gostou não se esqueça de compartilhar com os seus amigos, de repente a gente ainda faz uma parte três!