SearchWP Documentation

Veja o guia de instalação, navegue pela Base de Conhecimento, descubra os muitos hooks do SearchWP

searchwp_live_search_results_entry_data

Desde: 4.0.0

Este hook de filtro permite personalizar os dados de cada entrada de resultado do SearchWP antes que ela seja renderizada no template de resultados da Pesquisa ao Vivo do SearchWP.

Ele é especificamente destinado à saída da Pesquisa ao Vivo e permite que os desenvolvedores modifiquem propriedades do resultado, como título, link permanente, marcação de imagem e conteúdo do excerto. 

Parâmetros

Tipo Parâmetro Padrão Desde
Array $data
Chave Tipo Valor
id Inteiro ID da entrada, por exemplo, ID do post, ID do termo ou ID do usuário, etc.
tipo String Tipo da entrada, por exemplo, nome do tipo de post como 'post', 'page', 'product' etc., 'user' ou 'taxonomy-term.
título String Título da entrada
link permanente String URL da entrada
image_html String Elemento de imagem da entrada
conteúdo String Excerto da entrada
4.0.0
Objeto $resultado O objeto da entrada de resultado do SearchWP 4.0.0

Exemplos

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

Incluir SKU do produto no conteúdo do resultado da Pesquisa ao Vivo

Este exemplo anexa o SKU do produto WooCommerce ao conteúdo do resultado quando a entrada é um produto.

<?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 );

Como usar este código

Atualizar resultados de anexos de mídia para vincular ao post pai

Por padrão, anexos de mídia podem vincular à sua página de anexo. Este exemplo atualiza o link permanente para que os resultados da Pesquisa ao Vivo para posts de mídia apontem para a URL do post pai em vez disso.

 

<?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 );

Como usar este código