Get_Search_Query()不能处理带有“与”号的搜索查询

时间:2019-03-22 作者:Deepak Kamat

我正在使用简单的代码来创建搜索页面

$argscontactdirectory = array(
            "s" => get_search_query(),
            \'post_type\' => array( \'expertarticle\'),
            \'orderby\' => \'title\',
            \'order\'   => \'ASC\',
    );
然而,当搜索查询包含“&;”时,上面是我正在使用的代码如果搜索查询为M&M URL栏将显示?s=M&M

我尝试了很多东西,包括urlencode(), 但它也不起作用。

这里可以看到一个实例:http://sandbox.indiadairy.com/?s=hello&p_type=is

非常感谢您的帮助。

2 个回复
最合适的回答,由SO网友:czerspalace 整理而成

get_search_query 转义要输出到HTML的数据。您是否可以尝试以下方法:

$argscontactdirectory = array(
        \'s\' => sanitize_text_field( get_search_query( false ) ),
        \'post_type\' => array( \'expertarticle\'),
        \'orderby\' => \'title\',
        \'order\'   => \'ASC\',
);

SO网友:PW_NIC

Like this?

$argscontactdirectory = urlencode(
array(
        \'s\' => sanitize_text_field( get_search_query( false ) ),
        \'post_type\' => array( \'expertarticle\'),
        \'orderby\' => \'title\',
        \'order\'   => \'ASC\',
)
);

相关推荐