2

我正在尝试自定义一个 wp 插件(wp 作业管理器),以便它可以一次搜索多个关键字。目前它只能让我根据单个关键字输入(如“wendy”)查找结果,因为帖子中的输入有“firstname=wendy”。我正在寻找一种配置方式来搜索诸如单词组合之类的内容。即使它不在帖子本身的相同输入查询中。示例:“温迪·维纳”。当我尝试搜索“Wendy Vener”时,它什么也没找到,因为没有值为“Wendy Vener”的单一输入字段。

搜索框代码:

if ( ! function_exists( 'get_job_listings_keyword_search' ) ) :
/**
 * Join and where query for keywords
 *
 * @param array $args
 * @return array
 */
function get_job_listings_keyword_search( $args ) {
    global $wpdb, $job_manager_keyword;

    $conditions   = array();
    $conditions[] = "{$wpdb->posts}.post_title LIKE '%" . esc_sql( $job_manager_keyword ) . "%'";
    $conditions[] = "{$wpdb->posts}.ID IN ( SELECT post_id FROM {$wpdb->postmeta} WHERE meta_value LIKE '%" . esc_sql( $job_manager_keyword ) . "%' )";

    if ( ctype_alnum( $job_manager_keyword ) ) {
        $conditions[] = "{$wpdb->posts}.post_content RLIKE '[[:<:]]" . esc_sql( $job_manager_keyword ) . "[[:>:]]'";
    } else {
        $conditions[] = "{$wpdb->posts}.post_content LIKE '%" . esc_sql( $job_manager_keyword ) . "%'";
    }

    $args['where'] .= " AND ( " . implode( ' OR ', $conditions ) . " ) ";

    return $args;
}

提前致谢!

4

0 回答 0