这个WordPress函数应该是比较常用到的,特别是在插件或者拓展主题功能的时候。今天遇到特此写一篇来备注一下,以后用的到。

该esc_url函数

主要用于 URL 过滤:

  1. 拒绝不是下面协议的 URL (defaulting to http, https, ftp, ftps, mailto, news, irc, gopher, nntp, feed, and telnet)
  2. 消除无效字符和删除危险字符。
  3. 将字符转换成 HTML 实体,并且将 & 和 单引号(’) 转换成数字实体:&#038, &#039。

使用方法:

esc_url( $url, $protocols, $_context );
 $url
(string) (required) 将要被清理过滤的 URL
Default: 无

$protocols
(array) (optional) 可以接受协议的数组,如果没有设置,默认是:'http', 'https', 'ftp', 'ftps', 'mailto', 'news', 'irc', 'gopher', 'nntp', 'feed', 'telnet'。
Default: 无

$_context
(string) (optional) 如何返回 URL。
Default: 'display'
返回值是已经清理过滤的 URL

举个简单的例子:

<?php
echo esc_url('ceshi'); 

//输出的内容是:http://ceshi
?>