La necessità di accorciare i titoli in WordPress deriva, il più delle volte, da un’esigenza di carattere pratico: un titolo troppo lungo è infatti a volte incompatibile con le proporzioni o il layout del tema che stiamo usando, per cui ne risulterebbe penalizzato, poco gradevole all’occhio e poco comprensibile per l’utente. Accorciare i titoli in WordPress è un tipo di operazione che possiamo effettuare in vari modi, e vedremo nella pratica come fare attraverso esempi pratici.
La prima cosa che faremo è quella di creare una funzione per accorciare il titolo, che potremo sia richiamare come hook / action sia utilizzare direttamente all’interno delle nostre personalizzazioni.
Per poter funzionare correttamente, la funzione in questione andrà inserita, di norma, in uno dei seguenti tre luoghi:
- in un plugin personalizzato creato apposta, che ad esempio potrebbe contenere tutte queste funzioni extra che vogliamo prevedere;
- in un mu-plugin, con un principio analogo;
- nel file functions.php, solo che in questo caso l’implementazione rimarrà legata al theme (se cambiamo theme, non ci ritroveremo più il codice della funzione).
Prima tecnica: accorcia il titolo per numero di caratteri
Ecco l’intestazione:
function shorted_trovalost( $t, $l=30 ){ ... }
La funzione completa, che prende come argomento $t (che è la variabile che contiene il titolo) e $l che è la lunghezza massima, in questa sede è la prima che andremo a considerare, taglia il titolo sulla base del numero di caratteri massimi ($l, nell’esempio, per lasciare il tutto parametrico con 30 come valore di default).
Ed eccovi l’esempio:
function shorted_trovalost( $t, $l ){ if ( strlen( $t ) > 30 ) { //Character length $title_short = substr( $t, 0, 30); // Character length preg_match('/^(.*)\s/s', $title_short, $matches); if ($matches[1]) $title_short = $matches[1]; $title_short = $title_short.' ...'; } else { $title_short = $t; } return $title_short; }
Possiamo richiamare una funzione cosଠin questo modo:
$titolo_corto = shorted_rovalost( get_the_title(), 15 );
che in pratica assegna alla variabile $titolo_corto il valore del title corrente, accorciato di 15 caratteri; attenzione che in questo contesto sto facendo l’ipotesi che ci troviamo in un punto del file single.php e comunque all’interno del loop. Per fare in modo di ricavare il title corrente fuori dal loop, in caso, bisogna sfruttare una variabile globale, ad esempio:
global $post; $post_id =$post->ID; $titolo = get_the_title($post_id); $titolo_corto = shorted_rovalost( $titolo, 15 );
Seconda tecnica: accorcia il titolo per numero di parole
Una seconda tecnica sfruttabile per accorciare i titoli di WordPress è quella di accorciare per numero di parole, che secondo alcuni è un modo più safe per eseguire l’operazione e non rendere incomprensibile il testo in certe situazioni.
Ecco come fare:
function shorted_by_words_trovalost($t, $l, $after = '...') { $mytitle = explode(' ', $t, $l); if ( count($mytitle)>=$l ) { array_pop($mytitle); $mytitle = implode(" ",$mytitle). $after; } else { $mytitle = implode(" ",$mytitle); } return $mytitle; }
Possiamo richiamare una funzione cosଠin questo modo:
$titolo_corto = shorted_by_words_trovalost( get_the_title(), 15 );
In questo secondo caso ci prendiamo il title, andiamo a scomporlo nella funzione in “pezzi” (cioè parole, cioè stringhe separate da spazi mediante la funzione explode() ) e ci andiamo a creare un array delle prime $l parole. Questo array sarà ricomposto come stringa con la funzione implode e restituita dalla funzione. Le considerazioni precedenti, ovviamente, valgono qui in eguale misura.Photo by tacker
Da non perdere 👇👇👇
- 🔒 Conosci meglio privacy e diritti digitali
- 👩💻 Impara a programmare in Python, C++, PHP
- 💻 Configura hosting e domini
- 📊 Tutto sui database
- 🛠️ Approfondisci le nuove tecnologie
- 🎮 Esplora la sezione retrogame
- 👀 Guarda i migliori servizi in offerta
- 🏁 Usa al meglio Excel
- 💬 Il nostro canale Telegram: iscriviti
- 😳 Vuolsi cosi cola come si puote cio che si vuole, cosa vuol dire?
- 🧐 Core web vitals: cosa sono e quanto incidono sull’andamento di un sito
- 🧐 Che cos’è l’esame PET