Risultati di ricerca in ordine di numero di parole del post_title
-
Buonasera
Vi chiedo un aiuto per capire come sviluppare la ricerca secondo le mie necessità.
Esempio:
prodotti esistenti (post_title)
Mela verde
Torta di mela
Mela per torta
Mela
Mestolo per mescolare la mela e fare una torta
Ananas e Mela
Melatoninase io cerco Mela il risultato dovrebbe essere (ordine crescente):
Mela
Melatonina
Mela verde
Torta di mela
Mela per torta
Ananas e Mela
Mestolo per mescolare la mela e fare una tortase invece cerco Torta Mela troverò:
Torta di mela
Mela per torta
Mestolo per mescolare la mela e fare una tortaLa ricerca standard di WP propone un ORDERBY in cui si può inserire diverse possibilità.
Ho settato la ricerca in modo da eseguirla solo sul post_title.
Inoltre ho sviluppato diversi campi personalizzati con ACF.Per fare in modo di avere i risultati elencati per numero di parole presenti su post_title, pensavo di:
– utilizzare un nuovo campo ACF chiamato “numero_parole”
– inserire la funzione che scrive tale numero dopo averlo letto dallo stesso post_title (vedere funzione sotto).
– settare ORDERBY con il meta-value “numero_parole”Ho trovato il seguente codice per il calcolo del numero di parole:
‘
// conta il numero di parole del post_title
function post_word_count(){
/* Attiva l’output buffering */
ob_start();
/* Ottieni il contenuto del titolo */
the_title();
/* Preleva e ripulisci il contenuto del buffer */
$content = ob_get_clean();
/* Calcola il numero delle parole*/
return sizeof(explode(” “, $content));
}
‘
Inserendo tale funzione su functions.php si ottiene facilmente il numero di parole del post_title tramite il codice<?=post_word_count()?>
Ora però non riesco a fare in modo che WP scriva tale numero sul campo ACF “numero_parole”.
Credo che tale procedura dovrebbe essere fatta nel momento in cui si aggiorna/pubblica il post.
Ad ora ho circa 2500 post che dovrei aggiornare in tal senso.Qulacuno può aitarmi?
Grazie
- L'argomento ‘Risultati di ricerca in ordine di numero di parole del post_title’ è chiuso a nuove risposte.