WordPress模板标签搜索框函数get_search_form()

2015/2/12/ 991

本文介绍wordpress函数get_search_form(),本函数的作用主要是包含searchform.php,它的作用和get_header()、get_sidebar()、get_foote

本文介绍wordpress函数get_search_form(),本函数的作用主要是包含searchform.php,它的作用和get_header()、get_sidebar()、get_footer()类似的,在需要插入搜索框的地方,调用该函数即可。如果主题里面没有searchform.php模板,则他有默认的代码代替。

本函数的用法为<?php get_search_form( $echo ); ?> 。本函数有一个参数:$echo,该参数是可选的,如果是true则显示表单,如果是false则会返回一个字符串,默认是true。

说明

利用searchform.php主题文件显示搜索表单。

用法

<?php get_search_form( $echo ); ?>
参数

$echo

如果是true则显示表单,如果是false则会返回一个字符串,默认是true。

示例

如果你的主题文件里没有searchform.php,则WordPress会默认显示如下内置的代码:
<form role="search" method="get" id="searchform" action="<?php echo home_url( '/' ); ?>">
<div><label for="s">Search for:</label>
<input type="text" value="" name="s" id="s" />
<input type="submit" id="searchsubmit" value="Search" />
</div>
</form>

如果你的主题文件里面有searchform.php,则会调用他里面的内容显示出来,如果修改了search.php文件,请记住,一定要在form里面用Get方法把数据提交给你的博客首页,而且input输入框的名称一定要命名为 s ,通常还需要一个label标签作为提示。

下面是一个自定义的搜索框代码:

<form action="/" method="get">
<fieldset>
<label for="search">Search in <?php echo home_url( '/' ); ?></label>
<input type="text" name="s" id="search" value="<?php the_search_query(); ?>" />
<input type="image" alt="Search" src="<?php bloginfo( 'template_url' ); ?>/images/search.png" />
</fieldset>
</form>
还有一种方法来自定义我们的搜索框代码,那就是写一个自定义函数,添加到functions.php文件里面,该函数可以将 get_search_form() 函数定位到我们自定义的函数,代码如下:

function my_search_form( $form ) {

$form = '<form role="search" method="get" id="searchform" action="' . home_url( '/' ) . '" >
<div><label 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>';

return $form;
}

add_filter( 'get_search_form', 'my_search_form' );
注释

$echo参数如果忽略,则searchform.php里面的内容将会显示,

历史记录

始见于2.7.0版本
源文件

get_search_form()位于wp-includes/general-template.php中。



中国网站须将域名转移至境内
现在可以在微博上连载小说了
淘宝开店门槛提高
什么是关键词
惊闻Yahoo Pipes将关闭 有好的RSS聚合工具推荐吗
如何分析一个关键词