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的一个基础知识 表单提交
Jul 04 PHP
PHP将整个网站生成HTML纯静态网页的方法总结
Feb 05 PHP
php截取后台登陆密码的代码
May 05 PHP
CodeIgniter读写分离实现方法详解
Jan 20 PHP
Linux环境下php实现给网站截图的方法
May 03 PHP
php爬取天猫和淘宝商品数据
Feb 23 PHP
php 后端实现JWT认证方法示例
Sep 04 PHP
PHP实现简易计算器功能
Aug 28 PHP
PHP钩子实现方法解析
May 21 PHP
yii2.0框架使用 beforeAction 防非法登陆的方法分析
Sep 11 PHP
Laravel获取当前请求的控制器和方法以及中间件的例子
Oct 11 PHP
tp5框架基于Ajax实现列表无刷新排序功能示例
Feb 10 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
libmysql.dll与php.ini是否真的要拷贝到c:\windows目录下呢
2010/03/15 PHP
ThinkPHP3.1新特性之G方法的使用
2014/06/19 PHP
php查询mysql数据库并将结果保存到数组的方法
2015/03/18 PHP
PHP排序算法之希尔排序(Shell Sort)实例分析
2018/04/20 PHP
jquery删除提示框弹出是否删除对话框
2014/01/07 Javascript
JavaScript获取某年某月的最后一天附截图
2014/06/23 Javascript
初始Nodejs
2014/11/08 NodeJs
jquery实现右侧栏菜单选择操作
2016/03/04 Javascript
详解JS中定时器setInterval和setTImeout的this指向问题
2017/01/06 Javascript
详解Web使用webpack构建前端项目
2017/09/23 Javascript
详解在WebStorm中添加Vue.js单文件组件的高亮及语法支持
2017/10/21 Javascript
使用Vue.js开发微信小程序开源框架mpvue解析
2018/03/20 Javascript
详解基于node.js的脚手架工具开发经历
2019/01/28 Javascript
JS使用数组实现的队列功能示例
2019/03/04 Javascript
vue学习笔记之slot插槽用法实例分析
2020/02/29 Javascript
微信小程序scroll-view点击项自动居中效果的实现
2020/03/25 Javascript
Vue实现圆环进度条的示例
2021/02/06 Vue.js
详解Vite的新体验
2021/02/22 Javascript
[01:33:30]DOTA2-DPC中国联赛 正赛 RNG vs Phoenix BO3 第二场 2月5日
2021/03/11 DOTA
深入讲解Python编程中的字符串
2015/10/14 Python
利用Python实现Windows定时关机功能
2017/03/21 Python
用python处理图片实现图像中的像素访问
2018/05/04 Python
python如何发布自已pip项目的方法步骤
2018/10/09 Python
tensorflow 只恢复部分模型参数的实例
2020/01/06 Python
如何写python的配置文件
2020/06/07 Python
使用pytorch 筛选出一定范围的值
2020/06/28 Python
Vilebrequin美国官方网上商店:法国豪华泳装品牌
2020/02/22 全球购物
行政总经理岗位职责
2013/12/05 职场文书
车贷收入证明范本
2014/01/09 职场文书
人事部专员岗位职责
2014/03/04 职场文书
储备店长岗位职责
2015/04/14 职场文书
质量整改通知单
2015/04/21 职场文书
法制教育观后感
2015/06/17 职场文书
2016年基层党组织创先争优承诺书
2016/03/25 职场文书
党组织关系的介绍信模板
2019/06/21 职场文书
解决Goland 同一个package中函数互相调用的问题
2021/05/06 Golang