[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Удалить текст из поиска
Sega1821
Добрый день. Есть поиск на wordpress. В данный момент ищет по заголовкам, тексту и произвольным полям. Подскажите пожалуйста, как отключить поиск по тексту?


add_filter( 'get_search_form', 'my_search_form' );
function my_search_form( $form ) {
$form = '
<form role="search" method="get" id="searchform" action="'
. home_url( '/' ) . '" >
<img src="/wp-content/uploads/poisk.svg"><span class="chert"></span>
<input type="text" placeholder="Поиск:" value="'
. get_search_query() . '" name="s" id="s" />


<input type="submit" id="searchsubmit" value="Найти" />
</form>'
;
return $form;
}


/* Поиск по произвольным полям */
function cf_search_join( $join ) {
global $wpdb;

if ( is_search() ) {
$join .=' LEFT JOIN '.$wpdb->postmeta. ' ON '. $wpdb->posts . '.ID = ' . $wpdb->postmeta . '.post_id ';
}
return $join;
}
add_filter('posts_join', 'cf_search_join' );

function cf_search_where( $where ) {
global $pagenow, $wpdb;

if ( is_search() ) {
$where = preg_replace(
"/\(\s*".$wpdb->posts.".post_title\s+LIKE\s*(\'[^\']+\')\s*\)/",
"(".$wpdb->posts.".post_title LIKE $1) OR (".$wpdb->postmeta.".meta_value LIKE $1)", $where );
}
return $where;
}
add_filter( 'posts_where', 'cf_search_where' );

function cf_search_distinct( $where ) {
global $wpdb;
if ( is_search() ) {
return "DISTINCT";
}
return $where;
}
add_filter( 'posts_distinct', 'cf_search_distinct' );
/* Поиск по произвольным полям */
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.