Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    widget search di wordpress

    E' possibile impostare il widget in modo che la riceerca venga estesa a tutto il sito e non solo ai post?

    Grazie
    www.labdesign80.it
    Logo, Graphic e Web Designer

  2. #2
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,654
    Ciao, dipende cosa intendi a tutto il sito.
    La ricerca dei contenuti viene fatta sul post_type post, e solitamente avviene quando dopo il submit viene intercettata in get la variabile 's' (?s=keyword).
    Per modificare la query probabilmente potresti filtrare la sua query nativa sovrascrivendola.
    Mi pare si possa fare con
    codice:
    query_posts('posts_per_page=-1&post_type=POSTTYPE&orderby=ID&order=desc');
    Questo e' un esempio ma dovresti intercettare appunto l'evento di ricerca e quindi quando presente 's=...', vedere i parametri passati (keyword, paginazione, limiti.... ) e ricreare appunto la query come l'esempio.

    POSTTYPE è il tuo post type e se non error con ANY li cerca tutti.

    Leggi un po' QUI perchè le varianti potrebbero essere diverse

  3. #3
    Intanto grazie mille per la risposta.
    Ho un sito di cucina la cui ricerca viene effettuata solo nella sezione ricette e non tra gli articoli e le pagine.
    Vorrei estendere la ricerca... Immagino vada modificato il file search.php

    Quote Originariamente inviata da m4rko80 Visualizza il messaggio
    Ciao, dipende cosa intendi a tutto il sito.
    La ricerca dei contenuti viene fatta sul post_type post, e solitamente avviene quando dopo il submit viene intercettata in get la variabile 's' (?s=keyword).
    Per modificare la query probabilmente potresti filtrare la sua query nativa sovrascrivendola.
    Mi pare si possa fare con
    codice:
    query_posts('posts_per_page=-1&post_type=POSTTYPE&orderby=ID&order=desc');
    Questo e' un esempio ma dovresti intercettare appunto l'evento di ricerca e quindi quando presente 's=...', vedere i parametri passati (keyword, paginazione, limiti.... ) e ricreare appunto la query come l'esempio.

    POSTTYPE è il tuo post type e se non error con ANY li cerca tutti.

    Leggi un po' QUI perchè le varianti potrebbero essere diverse
    www.labdesign80.it
    Logo, Graphic e Web Designer

  4. #4
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,654
    Avevo capito volevi cercare in tutti i titi di post_type.
    In quel caso il filtro che ho mostrato andrebbe settato con query_posts('posts_per_page=-1&post_type=RICETTE&orderby=ID&order=desc'); Dove RICETTE ovviamente è il tuo post type relativo alle ricette.
    post_per_page a -1 vuol dire tutti senza paginazione ma presumo dovrai settarteli a secoda delle necessità.

  5. #5
    Questa è una parte del codice presente in search.php
    Da quello che vedo la ricerca coinvolge "recipe" ovvero la parte del sito che riguarda le ricette, ma non so dove modificare per estendere la ricerca anche alle pagine del sito e agli altri articoli.

    Codice PHP:
    <?php

                        
    global $paged$wp_query$wp;

                        if(
    $cat != "All" && !empty($cat)) {

                            
    $args = array(
                                
    'post_type' => 'recipe',
                                
    's' => $keyword,
                                
    'posts_per_page' => -1,
                                
    'tax_query' => array( array(
                                    
    'taxonomy' => 'recipesets',
                                    
    'field' => 'slug',
                                    
    'terms' => $cat,
                                ) ),
                            );

                        } else {

                            
    $args = array(
                                
    'post_type' => 'recipe',
                                
    's' => $keyword,
                                
    'posts_per_page' => -1,
                            );

                        }

                        
    $wp_querynull;

                        
    $wp_query = new WP_Query($args);

                    
    ?>
    www.labdesign80.it
    Logo, Graphic e Web Designer

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.