HUSKY - Product Filter for WooCommerce

woof_redraw_elements_after_ajax

Aggiunge messaggi mentre l'utente filtra in modalità AJAX.

Esempio:

add_filter('woof_redraw_elements_after_ajax', function($fields, $query) {
    ob_start();
    if (isset($query->query['tax_query']) AND $query->query['tax_query']) {
        $html = "<h1 class='entry-title'>Looks like you like the color:";
        foreach ($query->query['tax_query'] as $item) {
            if (isset($item['taxonomy']) AND $item['taxonomy'] = 'pa_color') {
                $term = get_term_by('slug', $item['terms'][0], 'pa_color');
                if (is_object($term)) {
                    $html .= $term->name;
                }
            }
        }
        echo $html, "!</h1>";
        $fields['.entry-title'] = ob_get_contents();
    }

    ob_end_clean();

    return $fields;
}, 999, 2);

Nell'esempio sopra, l'utente riceve un messaggio se seleziona un colore nel filtro. Con questa logica, è possibile fornire suggerimenti commerciali all'utente mentre utilizza la filtrazione.

Presta attenzione a:

  • $fields[‘.entry-title‘] = ob_get_contents(); – il testo in rosso è la classe CSS del contenitore in cui dovrebbe apparire il messaggio
  • $html = “<h1 class=’entry-title’>Looks like you like the color:”; … echo $html, “!</h1>”; – qui c'è il messaggio stesso, e ovviamente è possibile utilizzare uno switch PHP per visualizzare messaggi diversi per diversi contenuti delle richieste di ricerca