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 GD绘制24小时柱状图
Jun 28 PHP
PHP得到mssql的存储过程的输出参数功能实现
Nov 23 PHP
php中使用preg_match_all匹配文章中的图片
Feb 06 PHP
解析PHP中数组元素升序、降序以及重新排序的函数
Jun 20 PHP
php 去除html标记--strip_tags与htmlspecialchars的区别详解
Jun 26 PHP
解析Win7 XAMPP apache无法启动的问题
Jun 26 PHP
PHP大批量插入数据库的3种方法和速度对比
Jul 08 PHP
PHP扩展开发教程(总结)
Nov 04 PHP
PHP的Yii框架中View视图的使用进阶
Mar 29 PHP
PHP中多线程的两个实现方法
Oct 14 PHP
PHP PDO操作MySQL基础教程
Jun 05 PHP
PHP配合fiddler抓包抓取微信指数小程序数据的实现方法分析
Jan 02 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
require(),include(),require_once()和include_once()区别
2008/03/27 PHP
PHP 字符截取 解决中文的截取问题,不用mb系列
2009/09/29 PHP
simplehtmldom Doc api帮助文档
2012/03/26 PHP
Symfony2中被遗弃的getRequest()方法分析
2016/03/17 PHP
PHP中addslashes与mysql_escape_string的区别分析
2016/04/25 PHP
PHPCMS手机站伪静态设置详细教程
2017/02/06 PHP
PHP PDOStatement::fetch讲解
2019/01/31 PHP
键盘控制事件应用教程大全
2006/11/24 Javascript
Tab页界面 用jQuery及Ajax技术实现(php后台)
2011/10/12 Javascript
可自己添加html的伪弹出框实现代码
2013/09/08 Javascript
Javascript基础 函数“重载” 详细介绍
2013/10/25 Javascript
js onmousewheel事件多次触发问题解决方法
2014/10/17 Javascript
微信小程序 网络API Websocket详解
2016/11/09 Javascript
JS实现给对象动态添加属性的方法
2017/01/05 Javascript
vue使用watch 观察路由变化,重新获取内容
2017/03/08 Javascript
AngularJS实现根据不同条件显示不同控件
2017/04/20 Javascript
JavaScript寄生组合式继承原理与用法分析
2019/01/11 Javascript
vue2.0中set添加属性后视图不能更新的解决办法
2019/02/22 Javascript
详解vue中使用微信jssdk
2019/04/19 Javascript
element-ui上传一张图片后隐藏上传按钮功能
2019/05/22 Javascript
使用RxJS更优雅地进行定时请求详析
2019/06/02 Javascript
Vue 动态添加路由及生成菜单的方法示例
2019/06/20 Javascript
微信小程序云开发如何实现数据库自动备份实现
2019/08/16 Javascript
如何使用原生Js实现随机点名详解
2021/01/06 Javascript
[18:20]DOTA2 HEROS教学视频教你分分钟做大人-昆卡
2014/06/11 DOTA
PHP webshell检查工具 python实现代码
2009/09/15 Python
举例讲解Python中metaclass元类的创建与使用
2016/06/30 Python
使用Python对MySQL数据操作
2017/04/06 Python
Python图像处理之识别图像中的文字(实例讲解)
2018/05/10 Python
numpy向空的二维数组中添加元素的方法
2018/11/01 Python
keras.utils.to_categorical和one hot格式解析
2020/07/02 Python
集世界奢侈品和设计师品牌的意大利精品买手店:Tessabit
2019/08/17 全球购物
婚庆公司的创业计划书
2014/01/22 职场文书
连锁酒店店长职责范本
2014/02/13 职场文书
小学生环保标语
2014/06/13 职场文书
2015年乡镇民政工作总结
2015/05/13 职场文书