Di21H
@Di21H
Обычный человек

Как исправить поиск в get_posts()?

$search = "Иван";
$args = array(
        'post_type'   => 'doctor',
        'post_status' => array( 'publish', 'pending' ),
        's'           => $search,
        'posts_per_page' => 50,
        'cache_results'          => false,
        'update_post_meta_cache' => false,
        'order' => 'ASC',
		'orderby' => 'date',
    );
    $posts = get_posts( $args );


Этот код выводит посты в виде:
Андреев Иван
Александров Иван
Адам Иван
А надо начинать сразу с Ивановых:
Иванов Андрей
Иванов Семен

Как это можно сделать? Вот видел один вопрос в котором написано, что в functions.php get_posts() выводит посты в таком порядке.
  • Вопрос задан
  • 50 просмотров
Пригласить эксперта
Ответы на вопрос 1
wppanda5
@wppanda5 Куратор тега WordPress
WordPress Mедведь
В get_posts() исправить это не возможно, ибо поиск там работает так
LIKE '%Иванов%'

Можно поправить например так
LIKE 'Иванов%'

Но в данном случае будут искаться только те строки которые начинаются с Иванов и Андрей Иванов в выдачу не попадет.

Я честно говоря не уверен, что так даже поисковые движки умеют, типа elasticsearch, но тут просто не уверен
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы