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

5年以前  |  阅读数:655 次  |  编程语言:PHP 

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分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
文件下载
贪吃蛇
获取IMEI
双位运算符
发送邮件
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
提取后缀名
年的日历图
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例