提交搜索表单后,当我将永久链接设置为“%post name%”(不是字面上的“homeurl”,而是站点的域)时,站点将指向“homeurl/post name/?s=lorem”,而不是“homeurl/?s=lorem”。
当我将永久链接设置为“/blog/%postname%”时,搜索结果url变为/blog/%postname%/?s=lorem。
搜索表单(searchform.php)上的操作是:
<?php echo get_home_url(); ?>.
如果我把它硬编码到主url,也不会起作用。它会在/blog或帖子名称后不断附加搜索查询。
我甚至在函数中添加了以下内容。php,它没有任何效果:
function search_url_rewrite () {
if ( is_search() && !empty( $_GET[\'s\'] ) ) {
wp_redirect( home_url( \'/search/\' ) . urlencode( get_query_var(
\'s\' ) ) );
exit();
}
}
add_action( \'template_redirect\', \' search_url_rewrite \' );
你知道这里发生了什么吗?还有什么我可以试试的?我已经停用了所有插件并尝试了它。同样的故事。
*****更新(解决方案)*****
因为我是个很傻的文字印刷者
<?php get_search_form(); ?>
包装在表单标签中
<form> </form>
我删除了标签,问题停止了,搜索现在工作正常。