Evidenziare le parole chiave nei risultati di ricerca all'interno del titolo e dell'estratto dell'articolo farà sapere ai tuoi utenti cosa troveranno nell'articolo.
Istruzioni: Aggiungi il seguente codice al functions.php del tuo tema WordPress.
function wps_highlight_results($text){
if(is_search()){
$sr = get_query_var('s');
$keys = explode(" ",$sr);
$text = preg_replace('/('.implode('|', $keys) .')/iu', '<strong class="search-excerpt">'.$sr.'</strong>', $text);
}
return $text;
}
add_filter('the_excerpt', 'wps_highlight_results');
add_filter('the_title', 'wps_highlight_results');
Potrebbe interessarti anche sostituire le parole chiave in _content e _excerpt.
ciao, spero che questo ti trovi bene, grazie per il codice!
sono un madrelingua portoghese e ho bisogno che la ricerca corrisponda anche agli accenti :(
ad esempio: se cerco 'mae', non evidenzia il risultato, poiché nel testo mostra 'mãe'.
come posso superare questo problema degli accenti, per favore?
grazie,
cordiali saluti
Ho riscontrato un problema con questa funzione, se cerchi un termine che è esattamente uguale a una voce del menu di navigazione, rovina la navigazione, duplica le parole chiave all'interno della voce del menu insieme ad altri problemi.
C'è un modo per aggirare questo problema?
Grazie
Sibbo
Potrebbe essere in conflitto con il tema. Potrebbe essere necessario modificare il modo in cui viene applicato lo stile.
funziona alla grande. grazie
Bene a sapersi!
funziona magicamente…. muito obrigado.
rovina i link che contengono i termini di ricerca
ho una funzione che limita il mio estratto, come posso fare con questo?
Grazie mille per questo snippet. Ho trovato però un piccolo problema: de-capitalizza il termine di ricerca nei risultati di ricerca.
Ad esempio, se ho un post intitolato “Include password protected posts” e poi cerco “include”, il titolo del mio post nei risultati di ricerca verrà visualizzato come “include password protected posts”.
Hai qualche idea su come risolvere questo problema?
Cambia la stringa di sostituzione da
''.$sr.''
a
'$1'
Ciao,
Non sono molto esperto di programmazione PHP, quindi quando ho sostituito le stringhe, ho ottenuto degli errori.
Il mio sito è quasi andato giù.
Potresti voler consultare questa pagina: https://www.isitwp.com/properly-add-code-snippets-wordpress-site/
Hai visto messaggi di errore? Se sì, quali erano i messaggi?