wordpress 默认主题下的搜索是这样的
当输入框为空的时候跳转到 home页 或index.php
一般这不是 良好的用户体验
现在我们可以这样在 点击按钮时添加 如下的验证
<script type="text/javascript" src="<?php echo get_stylesheet_directory_uri(); ?>/js/jquery.validate.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("#searchform").validate({ errorPlacement: function(error, element) { error.appendTo( element.parent() ); }}); }) </script> <form class="mt10" method="get" id="searchform" action="<?php echo esc_url( home_url( '/' ) ); ?>"> <label for="s" class="assistive-text b bl f16 mr5"><?php _e( 'Search', 'encoaching' ); ?></label> <input class="required field" name="s" id="s" placeholder="<?php esc_attr_e( 'Search', 'encoaching' ); ?>" /> <input type="submit" class="submit" name="submit" id="searchsubmit" value="<?php esc_attr_e( 'Search', 'encoaching' ); ?>" /> </form>?
另外 search默认搜索的是所有资源
如果要排除某些特定的页面 不进入搜索行列可以加一些filter
加入下面的filter 可以排除不搜索 page 只搜索post的内容
//exlude pages from search function function mySearchFilter($query) { if ($query->is_search) { $query->set('post_type', 'post'); } return $query; } add_filter('pre_get_posts','mySearchFilter');?