WordPress中用于获取搜索表单的PHP函数使用解析


Posted in PHP onJanuary 05, 2016

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);
}
?>
PHP 相关文章推荐
php面向对象的方法重载两种版本比较
Sep 08 PHP
简单的方法让你的后台登录更加安全(php中加session验证)
Aug 22 PHP
提高PHP性能的编码技巧以及性能优化详细解析
Aug 24 PHP
php实现斐波那契数列的简单写法
Jul 19 PHP
PHP中使用asort进行中文排序失效的问题处理
Aug 18 PHP
typecho插件编写教程(三):保存配置
May 28 PHP
PHP+Ajax实时自动检测是否联网的方法
Jul 01 PHP
详解PHP的Laravel框架中Eloquent对象关系映射使用
Feb 26 PHP
PHP实现统计在线人数功能示例
Oct 15 PHP
基于ThinkPHP5.0实现图片上传插件
Sep 25 PHP
Laravel 框架路由原理与路由访问实例分析
Apr 14 PHP
thinkphp 获取控制器及控制器方法
Apr 16 PHP
在WordPress中使用wp_count_posts函数来统计文章数量
Jan 05 #PHP
详解WordPress中调用评论模板和循环输出评论的PHP函数
Jan 05 #PHP
简单的php+mysql聊天室实现方法(附源码)
Jan 05 #PHP
基于PHP实现简单的随机抽奖小程序
Jan 05 #PHP
详解WordPress开发中的get_post与get_posts函数使用
Jan 04 #PHP
使用PHP实现微信摇一摇周边红包
Jan 04 #PHP
解析WordPress中的post_class与get_post_class函数
Jan 04 #PHP
You might like
数字转英文
2006/12/06 PHP
ThinkPHP的Widget扩展实例
2014/06/19 PHP
PHP批量删除jQuery操作
2017/07/23 PHP
浅谈PHP无限极分类原理
2019/03/14 PHP
Document对象内容集合(比较全)
2010/09/06 Javascript
如何确保JavaScript的执行顺序 之jQuery.html并非万能钥匙
2011/03/03 Javascript
jQuery实现id模糊查询的小例子
2013/03/19 Javascript
如何使用jQuery来处理图片坏链具体实现步骤
2013/05/02 Javascript
在JavaScript里嵌入大量字符串常量的实现方法
2013/07/07 Javascript
判断iframe里的页面是否加载完成
2014/06/06 Javascript
在Node.js应用中使用Redis的方法简介
2015/06/24 Javascript
Angularjs中使用Filters详解
2016/03/11 Javascript
深入探究JavaScript中for循环的效率问题及相关优化
2016/03/13 Javascript
基于javascript实现简单的抽奖系统
2020/04/15 Javascript
jquery插件方式实现table查询功能的简单实例
2016/06/06 Javascript
关于jQuery EasyUI 中刷新Tab选项卡后一个页面变形的解决方法
2017/03/02 Javascript
详解angularJs指令的3种绑定策略
2017/04/13 Javascript
关于使用js算总价的问题
2017/06/23 Javascript
使用vue-cli脚手架工具搭建vue-webpack项目
2019/01/14 Javascript
vue动态绘制四分之三圆环图效果
2019/09/03 Javascript
Vue中rem与postcss-pxtorem的应用详解
2019/11/20 Javascript
javascript实现移动端轮播图
2020/12/09 Javascript
在nodejs中创建child process的方法
2021/01/26 NodeJs
Python中dictionary items()系列函数的用法实例
2014/08/21 Python
Django原生sql也能使用Paginator分页的示例代码
2017/11/15 Python
python抖音表白程序源代码
2019/04/07 Python
使用卷积神经网络(CNN)做人脸识别的示例代码
2020/03/27 Python
OpenCV+python实现膨胀和腐蚀的示例
2020/12/21 Python
贝尔帐篷精品店:Bell Tent Boutique
2019/06/12 全球购物
一套软件开发工程师笔试题
2015/05/18 面试题
Delphi工程师笔试题
2013/09/21 面试题
学雷锋献爱心活动总结
2015/05/11 职场文书
2016年寒假政治学习心得体会
2015/10/09 职场文书
2019如何书写演讲稿?
2019/07/01 职场文书
导游词之湖北梁子湖
2019/11/07 职场文书
导游词之永泰公主墓
2019/12/04 职场文书