SearchWP Documentation

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

Prioridade do Arquivo de Termo

Versão atual: 1.2.2

A extensão Prioridade de Arquivo de Termo está obsoleta
Por favor, use uma fonte de taxonomia em vez disso.

A Extensão Prioridade de Arquivo de Termo forçará as páginas de arquivo de termos de taxonomia a subirem para o topo dos resultados de pesquisa quando uma correspondência for encontrada. Isso permite que você pesquise por termo de taxonomia e tenha páginas de arquivo de taxonomia aplicáveis exibidas em seus resultados de pesquisa!

Esta Extensão se aplica apenas a mecanismos de pesquisa suplementares.

Prontos para usar, todos os mecanismos de pesquisa suplementares aplicarão essa alteração quando o plugin estiver ativo, mas você pode filtrar isso para mecanismos de pesquisa suplementares específicos fazendo algo como o seguinte:

<?php
function my_maybe_include_term_archive( $include, $engine, $terms ) {
// only have term archives included for supplemental search engine with name 'supplemental'
return ( $engine == 'supplemental' ) ? true : false;
}
add_filter( 'searchwp_term_archive_enabled', 'my_maybe_include_term_archive', 10, 3 );
view raw gistfile1.php hosted with ❤ by GitHub

NOTA: por padrão, Prioridade de Arquivo de Termo suporta correspondências de termos de taxonomia exatas. Se você quiser habilitar a correspondência de qualquer palavra dentro de um termo de taxonomia, use o seguinte filtro:

<?php
add_filter( 'searchwp_tax_term_or_logic', '__return_true' );
view raw gistfile1.php hosted with ❤ by GitHub

Uma vez ativado, você precisará personalizar seu loop de resultados de pesquisa para levar em conta as páginas de arquivo de termos nos resultados. Este é um exemplo completo de template de tema descrevendo como implementar corretamente a Extensão Prioridade de Arquivo de Termo:

<?php
/* Template Name: SearchWP Term Archive Priority Sample */
global $post;
// Retrieve applicable query parameters.
$search_query = isset( $_GET['searchwp'] ) ? sanitize_text_field( $_GET['searchwp'] ) : null;
$search_page = isset( $_GET['swppg'] ) ? absint( $_GET['swppg'] ) : 1;
// Perform the search.
$search_results = [];
$search_pagination = '';
if ( ! empty( $search_query ) && class_exists( '\\SearchWP\\Query' ) ) {
$searchwp_query = new \SearchWP\Query( $search_query, [
'engine' => 'supplemental', // The Engine name.
'fields' => 'all', // Load proper native objects of each result.
'page' => $search_page,
] );
$search_results = $searchwp_query->get_results();
$search_pagination = paginate_links( array(
'format' => '?swppg=%#%',
'current' => $search_page,
'total' => $searchwp_query->max_num_pages,
) );
}
get_header(); ?>
<div id="primary" class="content-area">
<main id="main" class="site-main" role="main">
<header class="page-header">
<h1 class="page-title">
<?php if ( ! empty( $search_query ) ) : ?>
<?php printf( __( 'Search Results for: %s' ), esc_html( $search_query ) ); ?>
<?php else : ?>
SearchWP Supplemental Search
<?php endif; ?>
</h1>
<!-- BEGIN Supplemental Engine Search form -->
<form role="search" method="get" class="search-form"
action="<?php echo site_url( 'search-results/' ); ?>">
<label>
<span class="screen-reader-text">
<?php echo _x( 'Search for:', 'label' ) ?>
</span>
<input type="search" class="search-field"
name="searchwp"
placeholder="<?php echo esc_attr_x( 'Search...', 'placeholder' ) ?>"
value="<?php echo isset( $_GET['searchwp'] ) ? esc_attr( $_GET['searchwp'] ) : '' ?>"
title="<?php echo esc_attr_x( 'Search for:', 'label' ) ?>" />
</label>
<input type="submit" class="search-submit"
value="<?php echo esc_attr_x( 'Search', 'submit button' ) ?>" />
</form>
<!-- END Supplemental Engine Search form -->
</header>
<?php if ( ! empty( $search_query ) && ! empty( $search_results ) ) : ?>
<?php foreach ( $search_results as $search_result ) : ?>
<article class="page hentry search-result">
<?php
switch( get_class( $search_result ) ) {
case 'WP_Post':
$post = $search_result;
?>
<header class="entry-header"><h2 class="entry-title">
<a href="<?php echo get_permalink(); ?>"><?php the_title(); ?></a>
</h2></header>
<div class="entry-summary"><?php the_excerpt(); ?></div>
<?php
wp_reset_postdata();
break;
case 'SearchWPTermResult':
?>
<header class="entry-header"><h2 class="entry-title">
<a href="<?php echo $search_result->link; ?>">
<?php echo $search_result->taxonomy; ?>: <?php echo $search_result->name; ?>
</a>
</h2></header>
<div class="entry-summary">
<p><?php echo $search_result->description; ?></p>
</div>
<?php
break;
}
?>
</article>
<?php endforeach; ?>
<?php if ( $searchwp_query->max_num_pages > 1 ) : ?>
<div class="navigation pagination" role="navigation">
<h2 class="screen-reader-text">Results navigation</h2>
<div class="nav-links"><?php echo wp_kses_post( $search_pagination ); ?></div>
</div>
<?php endif; ?>
<?php elseif ( ! empty( $search_query ) ) : ?>
<p>No results found, please search again.</p>
<?php endif; ?>
</main> <!-- .site-main -->
</div> <!-- .content-area -->
<?php get_footer(); ?>

Registro de alterações

1.2.2

  • [Correção] Tratamento de resultados em alguns casos
  • [Correção] Aplicação indesejada ao realizar pesquisas de administrador em alguns casos
  • [Atualização] Atualizador atualizado

1.2.1

  • [Correção] Aviso PHP
  • [Atualização] Atualizador atualizado

1.2.0

  • [Novo] Suporte para SearchWP 4

1.1.8

  • [Novo] Suporte para Pesquisa ao Vivo
  • [Atualização] Atualizador atualizado

1.1.7

  • [Correção] Número de argumentos passados para searchwp_term_archive_term_args
  • [Correção] Erro Fatal quando SearchWP não está ativo
  • [Correção] Verifica a configuração de correspondência parcial do núcleo do SearchWP

1.1.6

  • [Correção] Corrige um problema com taxonomias compartilhadas não aparecendo nos resultados

1.1.5

  • [Correção] Corrige um problema com a integração de Pesquisa ao Vivo sendo muito presunçosa, agora é opcional
  • [Novo] Novo filtro searchwp_term_archive_live_search para optar pela integração com Pesquisa ao Vivo

1.1.4

  • [Novo] Novo filtro searchwp_term_archive_term_args
  • [Melhoria] Melhor suporte para pesquisas do Live Ajax Search
  • [Atualização] Atualizador atualizado

1.1.3

  • [Mudança] Termos vazios não são mais ignorados por padrão ao usar correspondência OR/%LIKE%
  • [Novo] Novo filtro searchwp_term_archive_term_args para personalizar argumentos OR/%LIKE%

1.1.2

  • [Correção] Corrigido um problema com resultados inadequados contendo termos que abrangem vários tipos de postagem
  • [Atualização] Atualizador atualizado

1.1.1

  • [Melhoria] Melhor integração com Termos LIKE/Correspondências Difusas para correspondência de termos marciais

1.1

  • [Melhoria] Atualizações automáticas com base na sua chave de licença do SearchWP

0.6

  • [Melhoria] Formatação

0.5

  • [Correção] Melhor tratamento de offset
  • [Correção] Limpeza de avisos PHP
  • [Melhoria] Resultados agora ordenados pelo peso de sua taxonomia

0.4

  • [Novo] Novo filtro searchwp_tax_term_or_logic que permite lógica OR em termos de várias palavras

0.3

  • [Correção] Corrigido um problema onde tipos de postagem desativados não eram levados em consideração

0.2

  • [Correção] Corrigido um problema onde taxonomias estavam sendo definidas antes que as taxonomias personalizadas fossem registradas
  • [Melhoria] Considerar termos de várias palavras

0.1

  • Lançamento inicial

Crie uma Experiência de Pesquisa WordPress Melhor Hoje

Nunca mais perca visitantes para resultados de pesquisa inúteis. O SearchWP torna a criação de sua própria pesquisa inteligente do WordPress rápida e fácil.

Get SearchWP Now
Ícone de Múltiplos Mecanismos de Busca