详解WordPress开发中过滤属性以及Sql语句的函数使用

esc_attr()(过滤属性)
一般在写 Html 代码的标签属性的时候会是下边的格式:

<input type="text" name="rep" value="rep_value" />

那如果 value 属性是动态输出的呢?

<input type="text" name="rep" value="<?php echo get_option( 'rep_value' ); ?>" />

但是,如果动态输出的属性里有双引号、尖括号等特殊字符,Html 代码就会被打乱,这时就可以使用 esc_attr() 函数对输出的属性进行转义。

使用方法

esc_attr( $text );

参数

$text (字符串)(必须)要转义的字符串。 默认值:None

返回值

返回转义后的字符串。

例子

<input type="text" name="rep" value="<?php echo esc_attr( get_option( 'rep_value' ) ); ?>" />

其它

此函数位于:wp-includes/formatting.php

esc_sql()(过滤 Sql 语句)
esc_sql() 用来过滤准备添加到 Sql 语句里边的字符串,防止 Sql 注入和 Sql 语句被数据干扰出现异常。

用法

esc_sql( $data );

参数

$data

(字符串)(必须)要过滤的字符串。

默认值:None

返回值

(字符串)返回过滤后的字符串,可以直接添加到 Sql 语句里。

例子

$name = esc_sql( $name );
$status = esc_sql( $status );
$wpdb->get_var( "SELECT something FROM table WHERE foo = '$name' and status = '$status'" );

更多

此函数位于:wp-includes/formatting.php

(0)

相关推荐

  • WordPress的主题编写中获取头部模板和底部模板

    get_header()(获取头部) 引入主题的头部模板,默认会引入当前主题目录里的 header.php 文件.如果指定了一个名称,则引入当前主题目录的 header-{name}.php 文件,如果需要引入的文件不存在则引入 wp-includes/theme-compat/header.php 文件. 用法 get_header( $name ); 参数 $name (字符串)(可选)要引入的文件的名称,如果指定则引入 header-{$name}.php 文件. 例子 <?php get

  • 在WordPress中实现发送http请求的相关函数解析

    在 PHP 中发送 Http 请求(GET / POST)有很多的方法,比如 file_get_contents() 函数.fopen() 函数或者 cURL 扩展,但由于服务器的情况不同,所以不一定会兼容所有情况,这样想要发送 Http 请求则需要经过一系列的判断,非常麻烦. 不过 WordPress 提供了一个 WP_Http 的类来帮你做好兼容性的判断,你只需要调用里边的函数就能完成发送 Http 请求.下面我就简单的介绍一下这个类的常用函数. 发送 GET 请求 /** *使用 WP_H

  • 给WordPress的编辑后台添加提示框的代码实例分享

    WordPress 3.5 新添加了一个提示框功能,可以创建一个提示框,然后指向任何元素,比如下边的例子: 本文就来教你怎么创建一个这样的提示框. 首先需要添加提示框的脚本,这样才能使用提示框的 JS 方法. //挂载提示框脚本 function Bing_admin_pointer_enqueue_scripts(){ wp_enqueue_style( 'wp-pointer' ); wp_enqueue_script( 'wp-pointer' ); } add_action( 'admi

  • 讲解WordPress中用于获取评论模板和搜索表单的PHP函数

    comments_template()(获取评论模板) comments_template() 函数用来获取评论模板,一般只能用在文章或者页面上,如果不是文章或者页面将无法显示. 用法 comments_template( $file, $separate_comments ); 参数 $file (字符串)(可选)要评论模板文件. 默认值:/comments.php(当前主题根目录的 comments.php 文件). $separate_comments (布尔)(可选)是否根据评论的类型区

  • WordPress中编写自定义存储字段的相关PHP函数解析

    WordPress 的自定义字段就是文章的 meta 信息(元信息),利用这个功能,可以扩展文章的功能,是学习 WordPress 插件开发和主题深度开发的必备知识,方便给文章储存一些额外的自定义内容. 自定义字段不光给插件开发者使用,WordPress 的特色图像.自定义页面模板等功能的信息都储存在自定义字段的表单里边. 在文章编辑器界面的 "自定义栏目" 板块可以管理除了名字开头是 "_" 的字段(没有 "自定义栏目" 板块请在右上角的 &q

  • 详解WordPress开发中过滤属性以及Sql语句的函数使用

    esc_attr()(过滤属性) 一般在写 Html 代码的标签属性的时候会是下边的格式: <input type="text" name="rep" value="rep_value" /> 那如果 value 属性是动态输出的呢? <input type="text" name="rep" value="<?php echo get_option( 'rep_value

  • 详解WordPress开发中wp_title()函数的用法

    wp_title 函数在 WordPress 中是用来显示文章.页面.分类等等等等标题的一个函数,但在首页索引,该函数将不显示任何的东西.该函数在 WordPress 官方主题中一直被使用,但目前很多定制的主题中这个函数总是为忽视. 函数意义详解 wp_title 函数用来显示页面的标题,如在文章页面,则显示文章标题:在分类页面,则显示分类名称,但在首页索引,该函数将不显示任何的东西. 有点像 WordPress 中的 get_the_title 和 single_cat_title()这两个函

  • 详解WordPress开发中的get_post与get_posts函数使用

    get_post() 在一般主题制作时,get_post()函数我们一般很少会用到,但因为后面会讲到get_posts(),所以我们不得不先讲一下这个单数形式.这个函数的主要作用是,将一片指定的文章以一个对象或是数组的形式返回,以便我们后期利用.下面让我们简单的了解一下他的使用方法. get_post()函数说明 WordPress 的函数名总是那么浅显易懂,get_post()函数正如其表,即获得一篇文章,将一篇指定的文章以一个对象或是数组的形式返回,以便我们后期利用. 函数使用 <?php

  • 详解WordPress开发中get_header()获取头部函数的用法

    函数意义详解 从当前主题调用header.php文件.是不是很简单?好吧,如果你是新手的话这里要提醒一下,这里的get和get_children().get_category中的get略有不同之处. get_header函数声明(定义) 之前写文章很少会写到函数定义的代码,后来自己翻看的时候发现这个习惯不太好,所以决定,只要篇幅允许,就会把函数主题贴出来,方便自己翻看. get_header 函数,声明(定义)的位置,是在 wp=include/general-template.php 文件的第

  • 详解WordPress开发中用于获取分类及子页面的函数用法

    get_category get_category 可能我们平时接触的不多,但却是很有用,网上这个函数介绍的貌似不多,所以今天只针对官方 WordPress 英文文档做一下翻译. 函数描述 获得指定分类,以数组或是对象的形式返回. 函数使用 get_category( $cat, $out, $filter ) 参数描述 $cat:分类ID,或 $out返回值类型[OBJECT, ARRAY_A, or ARRAY_N] $filter 函数返回值 这里主要讲一下对象类型的返回值, 都有注释,请

  • 详解WordPress开发中get_current_screen()函数的使用

    get_current_screen() 函数是一个我们很少用到,但却超级实用的一个函数,如果你正着手于制作一个主题,却不知道文档应该放在哪里的话,那你应该看一下这个从 WordPress 3.0 才开始有的函数,该函数允许我们获得一个 WP_Screen 对象,并使用该对象的成员方法在后台里面加挂我们自定义的一个帮助菜单(该功能在,3.3版后得到完善). 如果你不喜欢将 WordPress 研究的太透彻的话,那你现在就可以拿着酱油瓶,向前打酱油去了. 引言 首先,get_current_scr

  • 详解IOS开发中生成推送的pem文件

    详解IOS开发中生成推送的pem文件 具体步骤如下: 首先,需要一个pem的证书,该证书需要与开发时签名用的一致. 具体生成pem证书方法如下: 1. 登录到 iPhone Developer Connection Portal(http://developer.apple.com/iphone/manage/overview/index.action )并点击 App IDs 2. 创建一个不使用通配符的 App ID .通配符 ID 不能用于推送通知服务.例如,  com.itotem.ip

  • 详解微信开发中snsapi_base和snsapi_userinfo及静默授权的实现

    详解微信开发中snsapi_base和snsapi_userinfo及静默授权的实现 snsapi_base与snsapi_userinfo属于微信网页授权获取用户信息的两种作用域 snsapi_base只能获取access_token和openID snsapi_userinfo可以获取更详细的用户资料,比如头像.昵称.性别等 首先,这里的access_token与基础access_token(比如自定义菜单用到的)是不一样的.两者区别如下: 网页授权的access_token在每次获取ope

  • 详解golang开发中http请求redirect的问题

    这两天在开发项目的时候遇到了一个问题,请求了一个URL,它会302到另一个地址,本意上只是想检查这个URL是否会做3XX的redirect跳转,结果每次reqeust都会返回最后一跳的结果.后来就看了下源码,了解下请求跳转的机制 实现代码 看下实现的简单代码 func main() { client := &http.Client{} url := "http://www.qq.com" reqest, err := http.NewRequest("GET"

  • 详解vue开发中调用微信jssdk的问题

    起因 微信分享网址时无法分享图片,这个问题需要用jssdk去解决.其实开始的时候时可以看到图片的,但后来微信禁止了.所以只能使用jssdk去解决. 普通网页开发很简单,但是使用vue或其他前端框架开发spa单页面webapp的时候就会有问题了.只要url发生变化就会报签名错误.其实微信官方上已经写了说明. 所有需要使用JS-SDK的页面必须先注入配置信息,否则将无法调用(同一个url仅需调用一次,对于变化url的SPA的web app可在每次url变化时进行调用,目前Android微信客户端不支

随机推荐