Tutorial WordPress affidabili, quando ne hai più bisogno.
Guida per principianti a WordPress
WPB Cup
25 Milioni+
Siti web che utilizzano i nostri plugin
16+
Anni di esperienza con WordPress
3000+
Tutorial WordPress di esperti

Visualizza il termine di ricerca e il conteggio dei risultati in WordPress

In questo tutorial condivideremo come aggiungere una semplice funzione alla tua pagina di ricerca che visualizzerà il termine di ricerca e il numero di risultati. Questa funzionalità è stata una richiesta speciale da parte di uno dei nostri utenti via email. Se desideri che trattiamo un argomento, non esitare a fare un suggerimento.

Visualizzazione del termine di ricerca e del conteggio dei risultati in WordPress

Apri il tuo file search.php nel tuo tema e aggiungi il seguente codice:

<h2 class="pagetitle">Search Result for <?php /* Search Count */ $allsearch = new WP_Query("s=$s&showposts=-1"); $key = wp_specialchars($s, 1); $count = $allsearch->post_count; _e(''); _e('<span class="search-terms">'); echo $key; _e('</span>'); _e(' &mdash; '); echo $count . ' '; _e('articles'); wp_reset_query(); ?></h2>

Il codice sopra visualizzerà qualcosa di simile a questo:

Risultato della ricerca per twitter — 15 articoli

Puoi anche evidenziare il termine di ricerca aggiungendo la classe CSS .search-terms al foglio di stile del tuo tema. Ecco un semplice CSS per iniziare:

.search-terms {
background-color:yellow;
color:blue;
}

Questa è solo una delle cose interessanti che puoi fare per la tua Pagina di Ricerca personalizzandola. Puoi anche evidenziare i termini di ricerca nei risultati, e persino aggiungere una funzionalità di ricerca per categoria alla tua ricerca di WordPress.

Fonte: Michael Martin

Dichiarazione: Il nostro contenuto è supportato dai lettori. Ciò significa che se fai clic su alcuni dei nostri link, potremmo guadagnare una commissione. Vedi come è finanziato WPBeginner, perché è importante e come puoi supportarci. Ecco il nostro processo editoriale.

Il Toolkit WordPress Definitivo

Ottieni l'accesso GRATUITO al nostro toolkit - una raccolta di prodotti e risorse relative a WordPress che ogni professionista dovrebbe avere!

Interazioni del lettore

15 CommentsLeave a Reply

  1. Posso usare questo codice nel file sidebar.php? Poiché ho bisogno di mostrare il termine di ricerca e il conteggio dei risultati nella barra laterale. Per favore, aiutami.

  2. thanks a lot for this snippet! :)

    secondo il codex di wp la funzione wp_specialchars è deprecata. dice che dovresti usare esc_html invece.

    saluti,
    marco

    • La prossima volta darò un'occhiata più attenta ai commenti. CHADHAYTON ha già pubblicato un link su come puoi gestirlo ora.

  3. echo $wp_query->found_posts;
     
    Aggiungendo questo all'inizio della tua pagina di ricerca verranno visualizzati il numero di post trovati per una particolare ricerca.
     
    echo get_search_query();
     
    Questo visualizzerà il termine di ricerca (inserito nella casella di ricerca dal visitatore del tuo sito).
     
    timer_stop(1);
     
    Questo visualizzerà il tempo impiegato per eseguire la ricerca.
     
    Tutto insieme potresti ottenere un output simile a:
     
    La tua ricerca per "chicchi di caffè" ha restituito "16" post in "0.87" secondi.

  4. Wow. È molto più semplice di così contare i risultati di ricerca di WordPress, qui:

        global $wp_query;
        $count = sizeof( $wp_query->posts );
        echo"<pre>";
        //var_dump($wp_query);// The WP Query Object
        var_dump($wp_query->posts); // The WP Query Object's 'posts' property (note the plural)
        echo"</pre>";
    

    Se inserisci questo snippet nel tuo template di ricerca, visualizzerà le proprietà della variabile '$wp_query', in particolare la proprietà 'posts' dell'oggetto. Questo è un array che memorizza una raccolta dei post restituiti dalla query di ricerca, con cui puoi fare diverse cose una volta che vi accedi, incluso (*rullo di tamburi*), *contare* il numero di post in quell'array usando la funzione PHP 'count()' o 'sizeof()'.

    • Il tuo codice è un po' tagliato. C'è un modo per inviarci lo snippet via email e possiamo provarlo e scriverci sopra. Ovviamente ti verrà dato il pieno credito.

      Amministratore

    • Chris,

      Questo non funzionerà. Il punto è scoprire il numero totale di risultati che corrispondono alla query, non il numero attualmente recuperato. Se ci sono più risultati di quanti ne "stiano" in una pagina, il tuo codice otterrà solo il numero di elementi in una pagina.

  5. I risultati di ricerca sono una cosa personale per un utente, quindi è bene che gli vengano fornite molte informazioni.

    • Questo codice è corretto. Funziona, l'unico problema che sta segnalando è che può essere fatto anche in modo diverso. Abbiamo utilizzato questo codice sul sito web di un cliente e funziona.

      Amministratore

  6. Buona idea. Cattiva esecuzione.
    Perché al mondo vorresti tradurre un tag span???
    E il mio preferito: _e(''); Huh??
    Perché vorresti interrogare la stessa ricerca due volte?
    Non ha alcun senso.

    Ma non voglio odiare, ecco come dovrebbe essere fatto (secondo la mia umile opinione):


    post_count); ?>

  7. Non penso abbastanza alla ricerca on-page. Qualcosa del genere è fantastico perché rende la pagina più personalizzata.

Lascia una risposta

Grazie per aver scelto di lasciare un commento. Tieni presente che tutti i commenti sono moderati secondo la nostra politica sui commenti, e il tuo indirizzo email NON verrà pubblicato. Si prega di NON utilizzare parole chiave nel campo del nome. Avviamo una conversazione personale e significativa.