Galera venho aqui postar pra vocês uma solução que fizemos aqui na Agência Trii local onde trabalho, um contador de caracteres.

Estavamos com um grande problema de limitar o texto para que o nosso layout não quebra-se, por muitos instantes eu estava usando a função ” wp_trim_words “, onde estava me gerando um problema, pois levando em conta que essa função ela faz a contagem de palavras e as vezes eu tinha em um determinado texto uma palavra muito grande, e isso quabrava meu layout. Então resolvemos criar uma função aproveitando as verificações do “wp_trim_words “, fizemos essa função.

Copie e cole o código no seu function.php

 //Função contadora de caracteres
function trim_letras( $conteudo, $caracteres ) {

$texto = wp_trim_words( $conteudo , $caracteres );

// Só realiza ela caso a string possua mais caracteres do que o delimitado
if( mb_strlen( $texto ) > $caracteres ){
$corte_texto = trim ( mb_substr( $texto, 0, $caracteres, ‘UTF-8’) );
$exp_texto = explode(” “, $corte_texto);
$palavra = ”;

//Loop remove a última palavra do resultado final, pois ela vem cortada e pode vir comprometida se escrita com caracteres especiais
for ($i=0; $i < count( $exp_texto ) -1 ; $i++) {
$palavra .= $exp_texto[$i] . ‘ ‘;
}
$final = trim( $palavra );
$final .= “…”;
}
else $final = $texto;

return $final;
}

Para você chamar essa função  aqui segue um exemplo de como ficaria no seu código.

// aqui eu pego o conteúdo do post
$conteudo_do_post = get_the_content(); 

//aqui eu defino a quantidade de caracter que vai ser exibido
$caracteres = '50'; 

echo '<p>' . trim_letras( $conteudo_do_post, $caracteres ) . '</p>';

Espero que tenha lhe ajudado. Ajude outras pessoas, compartilhe esse posta na sua linha do tempo.

 

Deixe uma resposta

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