Como utilizar convert_smilies() no WordPress (PHP)1 min leitura

Aprenda como utilizar a função convert_smilies() do WordPress, com um exemplo prático de código PHP para desabilitar a conversão automática de smilies para imagens, assim como a explicação da diferença entre emojis e smilies.

Com a função convert_smilies() você converte smilies (também conhecidos como emoticons) do formato texto para imagens. Veja abaixo alguns exemplos:

<?php
echo convert_smilies( "Antigamente emojis eram em texto puro :o e chamados de smilies :idea:" );
// Irá exibir: Antigamente emojis eram em texto puro 😮 e chamados de smilies 💡

echo convert_smilies( "Hoje em dia os emojis tomaram conta :( :!:" );
// Irá exibir: Hoje em dia os emojis tomaram conta 🙁 ❗

echo convert_smilies( "Mesmo assim, smileys são legais 8-) :lol:" );
// Irá exibir: Mesmo assim, smileys são legais 😎 😆
Code language: PHP (php)

Você pode conferir todos os smilies disponíveis no código da função smilies_init().

Qual a diferença entre emojis e smilies?

De forma bem resumida, os emojis são uma versão mais moderna dos smilies, suportando uma variedade muito maior de imagens. Por conta disto, hoje em dia os smilies são pouco utilizados. A implementação dos dois também é totalmente diferente.

Se você quiser saber mais sobre o assunto, recomendo a própria documentação do WordPress sobre smilies ou a página da Wikipedia sobre emoticon.

Como desabilitar a conversão automática de smilies para imagens no WordPress?

Havia uma opção no painel administrativo do WordPress para desabilitar esta conversão, mas ela foi removida na versão 4.3. Como a função convert_smilies() verifica se o valor de get_option( 'use_smilies' ) é verdadeiro antes de iniciar a conversão, é necessário definir este valor como falso para desabilitá-lo. Para fazer isto, é possível utilizar um plugin como o Keep Emoticons as Text ou então adicionar o seguinte código no arquivo functions.php do seu tema:

<?php
// Desabilita conversão de smilies para imagens
add_filter( 'option_use_smilies', '__return_false' );
Code language: PHP (php)

Aviso importante: Estes códigos foram criados apenas para fins didáticos, por isso nem sempre possuem todas as melhores práticas de segurança e otimizações necessárias. Portando, não me responsabilizo pelo seu uso em qualquer tipo de ambiente ou dou qualquer tipo de garantia para eles. Se você desejar utilizá-los será por sua própria conta e risco.

Posts Similares

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *