我刚刚在我的一个Wordpress网站上发现了这种奇怪的行为。搜索功能似乎完全适用于其他任何事情。重定向到"丢失帐户"页面只有在我键入" ap"在搜索框中。
具体来说,重定向后的URL是:
http://homeurl/lostpassword/?error=invalidkey
对我来说这很奇怪,因为我不记得做任何可能导致这种情况发生的事情,并且是因为事故而发现的。
我在functions.php中有一个函数来修改搜索过程:
add_action('pre_get_posts','alter_search_query');
function alter_search_query($query) {
if ( $query->is_main_query() && is_search() && !is_admin()) {
$query->set( 'order' , 'asc' );
$query->set( 'orderby', 'post_type');
if (isset($_GET['cat'])) {
$query->set('post_type', sanitize_text_field($_GET['cat']));
}
}
}
搜索表单HTML:
<form role="search" method="get" class="pull-right search-form" action="<?php echo home_url( '/' ); ?>">
<input type="text" value="<?php echo get_query_var('s') ?>" name="s" id="s" placeholder="wyszukaj" required=required/>
<input type="submit" value="Szukaj" />
</form>
我的主题文件夹中也有自定义的search.php模板,但除了循环搜索结果外,它并不包含任何逻辑。
我没有任何改变搜索功能的插件。至少我不知道。
可能导致这种情况的原因是什么?我需要知道,因为可能会有更多这样的惊喜。