Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何使Wordpress搜索不敏感_Php_Wordpress_Search - Fatal编程技术网

Php 如何使Wordpress搜索不敏感

Php 如何使Wordpress搜索不敏感,php,wordpress,search,Php,Wordpress,Search,我花了将近24小时试图找到解决这个问题的办法。 我试图使用WP_查询搜索帖子,但如果我不按确切的帖子标题搜索,它永远不会给出结果,这对我来说太不符合逻辑了!;我已经尝试了所有可能的和合乎逻辑的WP_查询的参数,但仍然不起作用 例如,我发布了一篇标题为(你好,欢迎!)的帖子,如果我搜索确切的标题是,我会得到它,但如果我将欢迎更改为delcome,它将不起作用!!我试着使用空格和加号以及所有的搜索案例,但都不起作用 您可以在下面的代码中看到,我已经按类别ID进行了搜索,这应该会使它更接近,但这并没有

我花了将近24小时试图找到解决这个问题的办法。 我试图使用WP_查询搜索帖子,但如果我不按确切的帖子标题搜索,它永远不会给出结果,这对我来说太不符合逻辑了!;我已经尝试了所有可能的和合乎逻辑的WP_查询的参数,但仍然不起作用

例如,我发布了一篇标题为(你好,欢迎!)的帖子,如果我搜索确切的标题是,我会得到它,但如果我将欢迎更改为delcome,它将不起作用!!我试着使用空格和加号以及所有的搜索案例,但都不起作用

您可以在下面的代码中看到,我已经按类别ID进行了搜索,这应该会使它更接近,但这并没有起作用

这是我的代码:

$term = term_exists( 'Uncategorized', 'category' );

if ( $term !== 0 && $term !== null ) {
   
//echo $term['term_id'];
    
$args = array(
     's' => 'Hello+and+delcome!',
     'cat' => $term['term_id'],
     'posts_per_page' => 1,
     'orderby' => 'title',
     'compare' => 'LIKE',
     'exact' => false
);
    

$the_query = new WP_Query( $args );


while ( $the_query->have_posts() ) : $the_query->the_post();
    the_title();
endwhile;

wp_reset_postdata();
    
}

这没有任何不合逻辑的地方。您试图匹配两个不同的字符串,并且希望它们在不同的情况下计算为true。如果您编写了一个模拟方法参数的SQL查询,我相信您不会得到任何结果(我还没有测试过,但我非常确定您的结果集为零)

我确实看了页面,没有看到任何关于确切参数的提及

话虽如此。我在设置智能搜索方面没有太多经验。然而;在我的脑海中思考这个问题,我会从以下几点开始

  • 运行当前已完成的查询
  • 如果未返回任何内容,请将搜索字符串按空格分隔,并将每个单词放入数组中
  • 使用以下方法检查每个单词的拼写
  • 使用建议的单词构建不同拼写变体的数组
  • 在WP_查询中运行不同拼写变体的数组。将所有结果放入一个变量中
它可能并不完美,但可能会帮助您找到解决方案。

确保MySQL方面的内容不区分大小写。