SearchWP Documentation

Visualizza la guida all'installazione, sfoglia la Knowledge Base, scopri i numerosi hook di SearchWP

searchwp_live_search_results_entry_data

Da: 4.0.0

Questo hook di filtro consente di personalizzare i dati per ogni voce del risultato di SearchWP prima che venga visualizzata nel modello dei risultati di ricerca live di SearchWP.

È specificamente pensato per l'output della ricerca live e consente agli sviluppatori di modificare le proprietà del risultato come il titolo, il permalink, il markup dell'immagine e il contenuto dell'estratto. 

Parametri

Tipo Parametro Predefinito Da
Array $data
Chiave Tipo Valore
id Intero ID della voce es. ID del post, ID del termine o ID utente ecc.
tipo Stringa Tipo di voce es. nome del tipo di post come 'post', 'pagina', 'prodotto' ecc., 'user' o 'taxonomy-term.
titolo Stringa Titolo della voce
permalink Stringa URL della voce
image_html Stringa Elemento immagine della voce
contenuto Stringa Estratto della voce
4.0.0
Oggetto $result L'oggetto voce del risultato di SearchWP 4.0.0

Esempi

All hooks should be added to your custom SearchWP Customizations Plugin.

Includi SKU del prodotto nel contenuto dei risultati della ricerca live

Questo esempio aggiunge lo SKU del prodotto WooCommerce al contenuto del risultato quando la voce è un prodotto.

<?php
add_filter( 'searchwp_live_search_results_entry_data', function( $data, $result ) {
if ( $result instanceof \WP_Post && $result->post_type === 'product' ) {
$sku = get_post_meta( $result->ID, '_sku', true );
if ( ! empty( $sku ) ) {
$data['content'] .= '<p><strong>SKU:</strong> ' . esc_html( $sku ) . '</p>';
}
}
return $data;
}, 20, 2 );

Come usare questo codice

Aggiorna i risultati degli allegati multimediali per collegarli al loro post genitore

Per impostazione predefinita, gli allegati multimediali potrebbero collegarsi alla loro pagina di allegato. Questo esempio aggiorna il permalink in modo che i risultati della ricerca live per i post multimediali puntino invece all'URL del loro post genitore.

 

<?php
add_filter( 'searchwp_live_search_results_entry_data', function( $data, $result ) {
if ( $result instanceof \WP_Post && $result->post_type === 'attachment' ) {
$parent_id = wp_get_post_parent_id( $result->ID );
if ( $parent_id ) {
$data['permalink'] = get_permalink( $parent_id );
}
}
return $data;
}, 20, 2 );

Come usare questo codice