您现在的位置是:首页 > 网站制作 > WordpressWordpress
Bootstrap替换WordPress的get_search_form()搜索样式
杰帅2023-06-16【Wordpress】人已围观
简介get_search_form()本函数的作用主要是包含searchform.php,它的作用和get_header()、get_sidebar()、get_footer()类似的,在需要插入搜索框的地方,调用该函数即可。如果主题里面没有searchform.php模板,则他有默认的代码代替。
get_search_form()本函数的作用主要是包含searchform.php,它的作用和get_header()、get_sidebar()、get_footer()类似的,在需要插入搜索框的地方,调用该函数即可。如果主题里面没有searchform.php模板,则他有默认的代码代替。
一、函数的用法为
<?php get_search_form( $echo ); ?>
本函数有一个参数:$echo,该参数是可选的,如果是true则显示表单,如果是false则会返回一个字符串,默认是true。
二、函数实例
1、如果主题目录里没有searchform.php这个文件,那么WordPress将默认使用内置的搜索表单:
<form role="search" method="get" id="searchform" action="<?php echo home_url( '/' ); ?>">
<div><label class="screen-reader-text" for="s">Search for:</label>
<input type="text" value="" name="s" id="s" />
<input type="submit" id="searchsubmit" value="Search" />
</div>
</form>
2、如果主题文件里有searchform.php这个文件,那么WordPress就会使用指定的搜索表单模版。注意,搜索表单应该使用get方法指向主页,文本域的name应该是s。
这是一个自定义searchform.php的例子:
<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>
3、最后,还得在主题的functions.php文件里添加一个自定义函数,作为一个钩子与get_search_form函数连接起来,搜索表单才起作用。
function my_search_form( $form ) {
$form = '<form role="search" method="get" id="searchform" action="' . 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>';
return $form;
}
add_filter( 'get_search_form', 'my_search_form' );
三、加载Bootstrap样式
首先你的Wordpress主题引入了Bootstrap的Css和JS,比如是一个用Bootstrap框架开发的主题。在主题的functions.php文件里添加以下代码:
/*
* 自定义搜索框
*/
function bootstrapwp_search_form( $form ) {
$form = '<form role="search" method="get" id="searchform" action="' . home_url( '/' ) . '" >
<div class="input-group pull-right" id="search"><label class="hide screen-reader-text" for="s">' . __('Search for:') . '</label>
<input class="form-control " type="text" value="' . get_search_query() . '" name="s" id="s" />
<span class="input-group-btn">
<input class="btn btn-default" type="submit" id="searchsubmit" value="'. esc_attr__('Search') .'" />
</span>
</div>
</form>';
return $form;
}
add_filter( 'get_search_form', 'bootstrapwp_search_form' );
四、函数源代码
get_search_form() 位于 wp-includes/general-template.php
Tags:Bootstrap get_search_form() wordpress函数 wordpress教程
很赞哦! ()
相关文章
随机图文
-
wp_reset_postdata 和 wp_reset_query 的作用与区别
什么时候使用wp_reset_query,什么时候用wp_reset_postdata? -
wordpress发布文章HTML标签被自动过滤掉该如何处理?
wordpress发布文章时很多html标签都会自动过滤掉,造成了文章中无法添加<style></style><script></script>等标签。那么该如何如何处理呢? 解决方法一: 将wp-includes文件夹下 -
WordPress 页面模板(Page Template)下拉列表不显示的原因及解决方法
WordPress 的自定义页面模板是一个非常强大好用的功能,使用它新建一些静态页面(Page),添加上一些数据调用的函数,再在网页上做一个导航连接到对应的页面就可以实现很多自定义的功 -
wordpress 上传的图片不显示的问题 base64,data:image/gif