get_search_form 函数在 WordPress 中是用来提取预设的搜索表单或者默认的搜索表单的。因为官方这个函数没有中文的,所以我就简单写了一下。
描述get_search_form 函数在 WordPress 中是用来提取自定义搜索表单或者默认的搜索表单的。显示自定义表单还是显示默认表单,完全取决于您的主题中是否有search.php文件,如果有该文件,则自动调用该文件,如果没有则显示默认的搜索表单。
使用
<?php get_search_form($echo = true) ?>
参数$echo 布尔型,用来选择显示还是返回变量。默认值:true
实例没你想象的复杂,其实就是这么简单。
<?php get_search_form(); ?>
这里提一下,如果你需要整合谷歌自定义搜索那些的话,你只要在你的search.php 文件中将自定义的部分代码放入即可喽,当然你需要设定样式。
函数源代码
<?php /** * Display search form. * * Will first attempt to locate the searchform.php file in either the child or * the parent, then load it. If it doesn"t exist, then the default search form * will be displayed. The default search form is HTML, which will be displayed. * There is a filter applied to the search form HTML in order to edit or replace * it. The filter is "get_search_form". * * This function is primarily used by themes which want to hardcode the search * form into the sidebar and also by the search widget in WordPress. * * There is also an action that is called whenever the function is run called, * "get_search_form". This can be useful for outputting JavaScript that the * search relies on or various formatting that applies to the beginning of the * search. To give a few examples of what it can be used for. * * @since 2.7.0 * @param boolean $echo Default to echo and not return the form. */function get_search_form($echo = true) { do_action( "get_search_form" ); $search_form_template = locate_template("searchform.php"); if ( "" != $search_form_template ) { require($search_form_template); return; } $form = "<form role="search" method="get" id="searchform" action="" . esc_url( home_url( "/" ) ) . "" > <div><label class="screen-reader-text" for="s">" . __("Search for:") . "</label> <input type="text" value="" . get_search_query() . "" name="s" id="s" /> <input type="submit" id="searchsubmit" value="". esc_attr__("Search") ."" /> </div> </form>"; if ( $echo ) echo apply_filters("get_search_form", $form); else return apply_filters("get_search_form", $form);}?>